C#Core 2.1 EF多对多关系查询

C#Core 2.1 EF多对多关系查询,c#,many-to-many,entity-framework-core,C#,Many To Many,Entity Framework Core,我对C#Core EF中的多对多联接表有问题。我正在将.NET Framework代码转换为.NET Core 2.1 这有点棘手,因为这些连接表必须在dbcontext中手动定义,并附带一个模型类 而不是像以前那样在后台处理 我不知道如何进行查询。急切的装载 例如,我过去只使用 db.Student.Include(x => x.Course).Where(... 现在这已经不起作用了,因为我只能加载联接表数据 db.Student.Include(x => x.CourseSt

我对C#Core EF中的多对多联接表有问题。我正在将.NET Framework代码转换为.NET Core 2.1 这有点棘手,因为这些连接表必须在dbcontext中手动定义,并附带一个模型类 而不是像以前那样在后台处理

我不知道如何进行查询。急切的装载

例如,我过去只使用

db.Student.Include(x => x.Course).Where(...
现在这已经不起作用了,因为我只能加载联接表数据

db.Student.Include(x => x.CourseStudent).Where(...
如果我这样做

db.Student.Include(x => x.CourseStudent).ThenInclude(y => y.Course).Where(...
然后我得到一个错误:

The Include property lambda expression 'x => {from CourseStudent y in x.Course select [y].Course}' is invalid. The expression should represent a property access: 't => t.MyProperty'. To target navigations declared on derived types, specify an explicitly typed lambda parameter of the target type, E.g. '(Derived d) => d.MyProperty'. For more information on including related data, see http://go.microsoft.com/fwlink/?LinkID=746393.
我读过那一页,那里没有什么有用的东西。它说.ThenInclude()应该可以工作,但实际上不行

学生源于人,但所有重要的成员都是学生。当然就是当然


出了点问题,我不知道是什么……

在设计一个小示例项目时,我偶然发现了解决方案。是智能感知错误欺骗了我,尽管我已经读到了它。。。。所以问题解决了


在设计一个小示例项目时,我偶然发现了解决方案。是智能感知错误欺骗了我,尽管我已经读到了它。。。。所以问题解决了


您提供的代码不足以确定问题所在。您最好将数据库上下文以及如何配置实体之间的关系放在这里您是对的。我会的!在为您设计一个小示例项目时,我偶然发现了解决方案。是智能感知错误欺骗了我,尽管我已经读到了它。。。。所以问题解决了。我可以取消这个问题吗……您提供的代码不足以确定问题。您最好将数据库上下文以及如何配置实体之间的关系放在这里您是对的。我会的!在为您设计一个小示例项目时,我偶然发现了解决方案。是智能感知错误欺骗了我,尽管我已经读到了它。。。。所以问题解决了。我可以取消这个问题吗。。。。