Seb*_*ber 31 performance change-tracking entity-framework-4.1
我正在将应用程序从EF1升级到EF4.1我使用"ADO.NET DbContext Generator"模板创建了一个DbContext和一组POCO.
当我查询生成的DbContext时,查询的数据库部分需要4ms才能执行(使用EF Profiler验证).然后它将上下文大约40秒(用文字:FORTY!)在它将结果返回给应用程序之前做任何事情.
EF1在不到2秒的时间内处理相同的查询.
关闭AutoDetectChanges,LazyLoading和ProxyGeneration赢了2-3秒.
当我使用AsNoTracking()扩展方法时,我能够将总执行时间减少到大约3秒.
这表明ChangeTracking是罪魁祸首.
但ChangeTracking是我需要的.我必须能够最终坚持所有更改,而无需手工挑选修改了哪些实体.
我有什么想法可以解决这个性能问题?
| 归档时间: |
|
| 查看次数: |
3026 次 |
| 最近记录: |