【发布时间】:2011-08-09 15:17:55
【问题描述】:
我有一个具有多对多关系的模型。
我也有 object1 和 object2 实体。 Object1 有一个ICollection<Object2> 属性。 Object2 有一个ICollection<Object1>。
问题在于 Object1 可能有多个具有相同键 (Id) 的 Object2。我的意思是ICollection<Object2> 可能有{Id=1, Id=2, Id=1, Id=3... etc} 对象是可能的情况。
然后我只调用 SaveChanges {Id=1, Id=2, Id=3} 保存在数据库中。如何以多对多关系保存多个 Object1 实例的相同对象?
【问题讨论】:
-
同一实体的多个对象如何拥有相同的 ID?每个对象的键应该是唯一的。
-
为什么不呢?例如,我想在我的属性集合中拥有多个对象的副本。 (例如,想象一下菜单顺序。您有菜单项,也有订单。您可以在一个订单中订购两份(菜单项“股份”))
-
是的,这是有道理的。但是我认为您仍然应该有另一个ID来区分这两个“赌注”。所以你有两个ID。一个唯一的 (ItemId),一个不唯一的 (ItemTypeID)。这将使您更容易跟踪和保存。
标签: c# entity-framework entity-framework-4.1