我正在处理一个 linq 查询,并尝试按照 Mutilevel include in C# Linq 中的建议将实体包含到多个级别.
所以我写下这样的查询
query.Include(u => u.Stops.Select(d => d.Address).Select(c => c.City));
查询在哪里
IQueryable<SomeEntity> query
我得到了异常
The expression must be a MemberExpression
我的实体的屏幕截图是 请帮忙,谢谢
最佳答案
Include
的重载(扩展?)不支持通过方法链包含。但是,它确实支持包含表达式的嵌套:
query.Include(u => u.Stops.Select(d => d.Address.City));
// this would work too:
categories.Include(u => u.SubCategories.Select(c => c.Items.Select(i => i.Manufacturer)));
// equals
categories.Include("SubCategories.Items.Manufacturer");
Select
部分仅用于访问集合类型属性项的成员。
关于c# - Linq Exception 表达式必须是 MemberExpression,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9094939/