0

假设我通过 DbContext 获取一个对象,然后关闭该上下文。后来我想得到这个对象的一些孩子,我打开一个新的上下文。将对象重新附加到我应该注意的新上下文是否有任何问题?

4

1 回答 1

1

如果在处置对象之前将对象从第一个上下文中分离出来,则应该没有问题。如果您不这样做,在某些情况下,您可能会收到错误,即对象已被另一个上下文跟踪,在这种情况下,不可能将对象附加到新上下文或将其从旧上下文中分离(因为它已经被释放)。

请注意,分离会破坏所有关系。如果您想完全避免分离,请不要使用 EF 创建的动态代理(延迟加载和动态更改跟踪)。

于 2013-01-09T13:08:45.137 回答