这LINQ按预期工作并带回给定的Employee
LINQ和关联 - 何时需要包含()?
Employees.Where(e => e.EmployeeId == 10).Select(e => new {e.Department})
但是相关的Department
实体类似的LINQ表达式失败说Department
是空
Employees.Where(e => e.EmployeeId == 10).Department
第一个LINQ声明能确定Employees
和Department
之间的关联,但第二个LINQ表达式不能。如果我在第二个LINQ示例中使用Include("Department")
语句,那么它将起作用并且Department
不会为空。
Employees.Include("Department").Where(e => e.EmployeeId == 10).Department
为什么Include(“Department”)在第一条LINQ语句中不需要?
你确定'Employees.Where(e => e.EmployeeId == 10).Department'编译?它不应该。 –
我不确定它是否编译。我正在使用我的EF组件测试它在LINQPad内部。智能感知不显示任何错误。 – webworm
另一个('Employees.Include(“部门”)。其中(e => e.EmployeeId == 10).Department')没有意义。你确定那里没有“First”或“FirstOrDefault”? –