假设我有这样的实体
Person
------
List<Person> Children
List<Item> FaveBooks
List<Item> FaveSweets
如果我想急切地为一个人 ID 加载孩子,这很好。
dataContext.People.Where(x => x.id == personId)
.Include(x.Children).First()
如果我还想包括儿童最爱的书籍,简单
dataContext.People.Where(x => x.id == personId)
.Include(x.Children.Select(c => c.FaveBooks)).First()
如何还包括孩子们的最爱糖果?
dataContext.People.Where(x => x.id == personId)
.Include(x.Children.Select(c => new { c.FaveBooks, c.FaveSweets })).First()
以上不起作用,因为我得到The Include path expression must refer to a navigation property defined on the type.
试试这样的事情。
dataContext.People.Where(x => x.id == personId).Include(x => x.Children.Select(c => c.FaveBooks)).Include(x => x.Children.Select(c => c.FaveSweets)).First();