关闭上下文任何实例的EF更改跟踪
我有一个用于报告的只读数据库的上下文,我正在编写大量代码,如下所示:
using (var context = new ReportingContext()) { var reportXQuery = context.ReportX.AsNoTracking(); // Do stuff here with query... }
有没有办法设置AsNoTracking
位,以便只是new
上面的ReportingContext
会自动使用AsNoTracking
而不是需要记住每次查询显式调用它?
尝试将您的上下文构造函数更改为:
public ReportingContext() { this.Configuration.AutoDetectChangesEnabled = false; }
编辑:
毕竟这不会帮助你,正如亚瑟的博客所述,它仅在特定情况下可用: