我正在寻找一种在我的 Context
中全局禁用更改跟踪的方法类(class)。这将防止开发人员忘记放置 .AsNoTracking()
在我们目前所做的每个存储库查询中。这也将防止我们手动必须.Detach()
实体有时。我在 EF Core 中找到了一个解决方案,它可以执行以下操作:
public class MyContext : DbContext
{
public MyContext() {
ChangeTracker.QueryTrackingBehavior =
QueryTrackingBehavior.NoTracking;
}
public DbSet<MyEntity> MyEntities {get;set;}
}
然而,
Context
Entity Framework 6 中的类似乎没有 QueryTrackingBehavior
它的属性(property)ChangeTracker
.有没有办法使用 Entity Framework 6 来实现这一点?请注意,我已经考虑使用
AutoDetectChangesEnabled = false
并且由于概述的原因而不起作用 here .感谢所有帮助。
最佳答案
不,EF6 中没有类似的功能
关于asp.net - EF6 等效于 EF Core 的 QueryTrackingBehavior.NoTracking,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46307316/