【发布时间】:2013-08-09 23:18:15
【问题描述】:
我有兴趣将AsNoTracking 与我的 LINQ 选择查询一起使用以提高性能。我正在使用带有 Code First 的实体框架 5。
但是,我的所有查询都是使用 LINQ 查询语法编写的,并且所有 AsNoTracking 示例都使用方法语法显示。我知道 AsNoTracking 是为 Method 语法创建的,但我如何使用 Query 语法实现相同的功能?
【问题讨论】:
-
AsNoTracking 不会提高性能,因为它允许 EF 在每次调用时联系数据源。因此,跟踪也是缓存并提高了性能。
-
嗨罗伯特,这很有趣,因为我已经阅读了很多文章指出 AsNoTracking() 在使用 SELECT 时无需进行任何更新即可提高性能。即blog.staticvoid.co.nz/2012/4/2/…
-
好的,准确地说:AsNoTracking 在获取之前未获取的数据时确实更快,因为它不需要检查所需的数据是否已经存在(这将是最快的,当然)。
标签: c# linq entity-framework ef-code-first