我想使用急切加载在Entity Framework Core中获得多个嵌套级别的子表.我不认为延迟加载已经实现.
我找到了EF6 的答案.
var company = context.Companies .Include(co => co.Employees.Select(emp => emp.Employee_Car)) .Include(co => co.Employees.Select(emp => emp.Employee_Country)) .FirstOrDefault(co => co.companyID == companyID);
我的问题是Select
在EF Core中无法识别
错误CS1061"Employees"不包含"Select"的定义,也没有扩展方法"Select"接受类型为"Employees"的第一个参数(您是否缺少using指令或程序集引用?)
我包含的命名空间:
using MyProject.Models; using Microsoft.Data.Entity; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks;
Select
在EF Core中有什么替代方案.
您可以使用关键字ThenInclude
,而不是
例如
var company = context.Companies .Include(co => co.Employees).ThenInclude(emp => emp.Employee_Car) .Include(co => co.Employees).ThenInclude(emp => emp.Employee_Country) .FirstOrDefault(co => co.companyID == companyID);