LINQ 中的 First() 方法会导致急切加载还是延迟加载?

3
我有一个问题:
db.Order.Include("OrderItem").First(r => r.Id == OrderId)
  1. 仅调用First()会导致急切加载还是惰性加载?
  2. 如果不是,那么如何强制对First()进行急切加载?
  3. 上面的联合查询是急切加载还是惰性加载?

1
Linq to SQL还是Linq to EF?这两个框架非常不同。 - Camilo Terevinto
1个回答

9
First()FirstOrDefault()方法在调用它们的时候会立即执行(急切求值)。所有标准LINQ操作符返回单个非可枚举结果的情况,以及那些不返回显式的IEnumerable<T>的情况,都会被立即执行。请参考按执行方式分类的标准查询运算符列表获取完整的LINQ操作符列表。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接