标签: c# entity-framework linq-to-entities
我正在尝试根据与公司匹配的用户名恢复结果。涉及5个表。我可以做一个subselect(显然不是)或者最好的方法是什么。
db.Displays .Include(d => d.Location) .Include(d => d.Location.Region) .Include(d => d.Location.Region.Company.Users.Where(p=> p.LoginName == userName);
答案 0 :(得分:3)
您不需要应用前两个Includes,第三个应该能够包含您需要的级别:
Includes
var displays= db.Displays.Include(d=>d.Location.Region.Company.Users).Where(d=>d.Location.Region.Company.Users.Any(p=>p.LoginName== userName));
在Include之后,您需要调用Where方法根据要应用的条件过滤显示。
Include
Where
选中此link,了解Include扩展方法的工作原理。