**延迟加载 **
在遍历时才会执行查询
**贪婪加载 **
一次性加载所有数据 Include()方法,访问一次数据库 所有数据都有,数据过多
**显式加载**
与延迟加载类似,但不会主动去加载导航属性的数据 而需要手动去加载
关闭延迟加载 :
1.特定的导航属性去掉visual
2.配置db.Configuration.LazyLoadingEnabled =false (关闭延迟加载)
//显示加载
//手动加载
var resultOrder = db.Orders.Find(3);
// Reference 对应单个对象
db.Entry(order).Reference("user").Load();
//Collection 对应多个对象(集合)
db.Entry(user).Collection("Order").Load();
如果你要访问所有数据,可以使用贪婪加载。如果你不经常访问导航属性,或只访问部分,可以使用延迟加载
扫描二维码,在手机上阅读!
评论