我已经习惯了Entity Framework 4,在调用某些视图时,我必须确保将MergeOption
设置为NoTracking
,如此
SHEntity.qry_UserPermissions.MergeOption = System.Data.Objects.MergeOption.NoTracking;
但在更新到EF 6.1时,我甚至不再将MergeOption
视为qry_UserPermissions
的一部分。我必须设置这个或EF有时会在我不想要的时候合并记录。我已经google了,并没有任何运气,即使这对我来说似乎是一个简单的问题。
如何在EF 6.1中关闭跟踪?
答案 0 :(得分:16)
使用AsNotrack()方法实体,您可以停止跟踪EF中的实体 这可以写成我们你在上下文中查询。
实施例
using (SHEntity context = new SHEntity())
{
var up = context.qry_UserPermissions.AsNoTracking().ToList();
}