簡體   English   中英

多對多關系類設計

[英]Many To Many Relationship class design

如何處理以下情況。

我有一個具有List<Orders>Product類和一個具有List<Products> Order類。

具有上述結構是否很好,否則將來會出現任何問題。 如果是引起問題的,那么還有其他方法可以實現它...

我想說,在Product類中使用List<Order>可能弊大於利。 根據項目的大小,一種產品可以成千上萬個訂單。

在這種情況下,即使您只想創建產品列表,也將不得不在其中創建數千個Order實例-完全無用的數據。

取而代之的是,您可以輕松地通過以下方式接受包含該產品的所有訂單:

List<Order> _Orders = AllOrders.Where(_Order => _Order.ProductIds.Contains(YourProductId));

您確實不需要從ProductOrder的鏈接,因為如果您想了解某個特定產品在過去是否已訂購,則可以使用該產品的ID搜索與每個訂單關聯的產品。 OrderProduct的鏈接很有意義,因為通過這種方式,您可以看到由哪些產品構成訂單。

您可以通過使用元組將產品與訂單鏈接來解除訂單和產品類型的耦合。

Product移除List<Order>並從Order移除List<Order> List<Product>並創建一個包含List<Tuple <Order, Product>>的第三類。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM