EF6 跟踪和无跟踪查询
[删除(380066935@qq.com或微信通知)]
更好的阅读体验请查看原文:https://docs.microsoft.com/zh-cn/ef/ef6/querying/no-tracking
AsNoTracking
有时,可能需要从查询中获取实体,但不能通过上下文跟踪这些实体。 在只读方案中查询大量实体时可能会有更好的性能。 本主题所介绍的方法同样适用于查询使用 Code First 和 EF 设计器创建的模型。
新的扩展方法 AsNoTracking 允许以这种方式运行任意查询。 例如:
using (var context = new BloggingContext())
{
// Query for all blogs without tracking them
var blogs1 = context.Blogs.AsNoTracking();
// Query for some blogs without tracking them
var blogs2 = context.Blogs
.Where(b => b.Name.Contains(".NET"))
.AsNoTracking()
.ToList();
}