相关疑难解决方法(0)

EntityFramework中的.Include()vs .Load()性能

当查询一个大型表时,你需要在代码中访问导航属性(我明确地不想使用延迟加载)什么会表现更好.Include().Load()?或者为什么要使用另一个?

在这个例子中,包含的表只有大约10个条目,员工有大约200个条目,并且可能发生大多数这些条目将被加载,因为它们匹配where子句.

Context.Measurements.Include(m => m.Product)
                    .Include(m => m.ProductVersion)
                    .Include(m => m.Line)
                    .Include(m => m.MeasureEmployee)
                    .Include(m => m.MeasurementType)
                    .Where(m => m.MeasurementTime >= DateTime.Now.AddDays(-1))
                    .ToList();
Run Code Online (Sandbox Code Playgroud)

要么

Context.Products.Load();
Context.ProductVersions.Load();
Context.Lines.Load();
Context.Employees.Load();
Context.MeasurementType.Load();

Context.Measurements.Where(m => m.MeasurementTime >= DateTime.Now.AddDays(-1))
                    .ToList();
Run Code Online (Sandbox Code Playgroud)

.net c# entity-framework

63
推荐指数
4
解决办法
4万
查看次数

标签 统计

.net ×1

c# ×1

entity-framework ×1