EF对象中的平等

时间:2014-10-01 11:16:38

标签: c# asp.net entity-framework

假设EF中的两个实体指针总是equal(假设它们指向相同的行和数据库上下文)是否安全?无论我如何遍历连接表等来访问它们。

还是有例外吗?据我所知,他们总是会引用相同的对象,因此总是相同的。

Person p1 = dbcontext.Persons.FirstOrDefault();
Person p2 = dbcontext.Persons.FirstOrdefault();
Debug.Write(p1.Equals(p2)); // true

1 个答案:

答案 0 :(得分:1)

根据我的理解,当查询对象时,对象更改跟踪功能(如果启用)将返回已查询的同一对象。默认情况下,它已启用。如果刷新对象,则可能不是这种情况(意味着上下文中的Refresh方法)。

我不保证这种行为100%......