我正在尝试使用 EF 7 查询集合和子集合。代码如下:
public async Task < List < Table >> GetAllTable() {
var tableList = await db.Tables.Include(o => o.Checks.Select(i => i.CheckItems)).ToListAsync();
return tableList;
}
我遵循这里的语法 MSDN .但是,当我运行此代码时,出现以下错误。有谁知道这里出了什么问题?谢谢!
InvalidCastException: Unable to cast object of type 'Remotion.Linq.Clauses.Expressions.SubQueryExpression' to type 'System.Linq.Expressions.MemberExpression'.** Microsoft.Data.Entity.Query.EntityQueryModelVisitor.b__30_2(<>f__AnonymousType2`2 <>h__TransparentIdentifier0)
最佳答案
您正在阅读的文档适用于 EF 5。
design meeting notes对于 EF 7,说它的语法已经改变 - 试试这个:
db.Tables.Include(t => t.Checks)
.ThenInclude(c => c.CheckItems)
.ToListAsync()
关于c# - 包括一个集合,然后是下一级的集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30151490/