我有3个实体(MasterDoc,文件夹,用户),我在另一个实体(Folder_User)中链接在一起。
public class Folder_User
{
public int Id { get; set; }
public MasterDoc MasterDoc { get; set; }
public User User { get; set; }
public Folder Folder { get; set; }
}
在ive将类型为Folder_User的对象插入数据库之后,我可以(在相同的DbContext上)查询它并检索子对象。
public static List<Folder_User> GetAllFolder_USer(User user, DataModel dbContext)
{
List<Folder_User> list = null;
var query = from f in dbContext.Folder_User
where f.User.Id == user.Id
select f;
list = new List<Folder_User>(query);
return list;
}
但是在页面刷新(新的dbcontext)之后,当我运行相同的查询时,对MasterDoc的对象引用为空。
*我已经尝试过延迟加载,但似乎没有什么可以修复它。 *还检查了数据库,表格中正确包含具有MasterDoc Id的行。
答案 0 :(得分:1)
您需要Include
查询中的MasterDoc
:
public static List<Folder_User> GetAllFolder_USer(User user, DataModel dbContext)
{
var query = dbContext.Folder_User.
Include(f => f.MasterDoc).
Where(f => f.User.Id == user.Id);
return query.ToList();
}