2012-01-11 37 views
1

我已将实体附加到EntityState.Unchanged的上下文中,这些实体将通过我后来通过DbContext<T>.Add()添加的新实体引用。 Add()增加了实体,但它也增加了它参考的其他实体增加了收集在ObjectStateManager,尽管引用的其他实体收集在先前的。在调试器下,我看到两个集合中的引用实体。所以,当我不想让它们插入时,我会在引用的子实体上发生插入。为什么我会将参考实体添加到上下文中而不是附加,保持不变?

+0

请显示用于附加和添加实体的代码。 – 2012-01-11 16:06:48

+0

现在太复杂了。它在一个通用的存储库实现中。我会尽量缩小它。 – Kit 2012-01-11 16:10:47

回答

0

先前附加的实体在结构上是相同的,但它们是不同的参考。 EF似乎使用ReferenceEquals

+0

您可以接受您自己的答案来标记已完成的问题。 – 2015-06-02 13:22:59

相关问题