我在我的Apllication中使用EntityFramework。如果我想获取一个表值意味着将返回具有所有引用的表值的值。获取所有表值需要时间。如果我需要一个指定的参考表值,则意味着
如何阻止获取其他参考表值?
答案 0 :(得分:0)
如果要提取没有引用表的单个表记录,则需要在DBContext类中定义LazyLoadingEnabled false。
示例您的数据库名称是EmpReview
public class UserDataLayerContext : DbContext
{
public UserDataLayerContext()
: base("name=EmpReview")
{
this.Configuration.LazyLoadingEnabled = false;
}
所以在UserDataLayerContext过滤时间内的所有DBSet类只获得没有任何引用类的单表记录。
使用this.Configuration.LazyLoadingEnabled = false;没有返回引用表calss但是你需要获得单个引用表检查下面的例子,
假设一个表类是UserMaster,它是GroupMaster master的链接
So
return context.UserMasters.Include("GroupMaster").Where(x => (x.UserID == id) && (x.IsActive ==
true)).ToList();
在这种情况下,您将获得包含组主表的所有usermaster记录。
并且
return context.UserMasters.Where(x => (x.UserID == id) && (x.IsActive == true)).ToList();
以上情况,您将获得带有组主表的usermaster的所有记录。