我在EF-Code-First
中有3个班级public class User {
public string Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public virtual ICollection<Flat> Flats { get; set; }
}
public class Flat {
public string Id { get; set; }
public string Number { get; set; }
public virtual House House { get; set; }
public virtual ICollection<User> Users { get; set; }
}
public class House {
public string Id { get; set; }
public string Street { get; set; }
public string Number { get; set; }
public virtual ICollection<Flat> Flats { get; set; }
}
我希望得到所有用户。
我做:
var Result = _storage.Users
.Include(x => x.Flats)
.Include(y => y.Flats.Select(z => z.House))
.ToList();
在结果中用户 Flats ,但 Flats 没有房屋
我做错了什么?
答案 0 :(得分:0)
您只需添加一个包含,即最深层次的包含:
var Result = _storage.Users
.Include(user => user.Flats.Select(flat => flat.Houses))
.ToList();
这将自动包括所有Houses属性以及所有Flat属性和Houses属性
其他Flat Flat不包含在内。对于那些你需要额外包括。