我必须吃谦虚的馅饼,并承认我认为我在EF6和EFCore中多了解多人。我有你的标准例子,许多学生有很多学科情景,但是当我试图导航集合以获取特定属性时,问题就出现在我被卡住的投影中,并且无法弄清楚如何使用Select
或SelectMany
得到属性在我的投影。清除实体框架6和实体框架中的多对多内核查询
因此,例如,我将如何使用Select
或SelectMany
完成此操作?
我需要正确理解这两个LINQ方法,但任何人都可以帮助我吗?
这里是我卡在那里一个例子:
return await _db.Subjects
.Include(s => s.Teachers)
.Include(s => s.Students)
.Where(s => s.Students.Select(x => x.Class.ClassName).Contains(classname))
.Select(s => new SubjectViewModel
{
Class = s.Students.Select(p => p.Class.ClassName)
})
那么,如何完成这个,我做了SelectMany
或Select
?哦,任何人都可以指向我以外的其他内容正确理解Select
和SelectMany
?任何人都可以告诉我这将如何在EFCore中完成?我想我只需要帮助。
小的一点,但这是** linq-to-entities **而不是linq-to-sql,正如其中一个标签所暗示的。 –
抱歉混淆。将相应地编辑它。 –
我想你会得到一个更快的答复,如果你张贴你的班级定义的教师,学生,主题和类,所以我们可以看到的关系。此外,SubjectViewModel将有助于查看总体预期输出。 –