1、
var promoList= context.OrderPromotions
.Where(p => orderId.Equals(p.OrderId))
.ToList()
2、
var promoQ= context.OrderPromotions.Where(p => orderId.Equals(p.OrderId))
var promoList=promoQ.ToList()
问题:
1、代码如上,1、2、两种情况,那种会在where执行时立即链接数据库查询数据?
2、在调试的过程中,2、中的代码第一行执行后,发现promoQ中已经存在数据,这里是否已经完成了一次数据查询,并且加载了整个数据表?
触发数据库连接的不是.Where,而是.ToList()。
这个不是ef里面的延迟执行的概念(不是延迟加载)?不知道描述这个现象或情况。
@Sky.Grain: 我只知道EF有延迟加载,不知道有延迟执行。