贪婪加载:在linq查询中的时候希望查找出所有的. 主要关键字 Include;
var orders = from o in context.Orders.Include("OrderDetails") select o;
延迟加载 在数据模型 model定义属性的时候添加主要关键字virtual
public virtual List<OrderDetail> OrderDetails { get; set; }
贪婪加载:
1、减少数据访问的延迟,在一次数据库的访问中返回所有的数据。
2、一次性读取所有相关的数据,可能导致部分数据实际无需用到,从而导致读取数据的速度变慢,效率变低
延迟加载:
1、只在需要读取关联数据的时候才进行加载
2、可能因为数据访问的延迟而降低性能,因为循环中,每一条数据都会访问一次数据库,导致数据库的压力加大