Entity framework EF中的动态查询

Entity framework EF中的动态查询,entity-framework,dynamicquery,Entity Framework,Dynamicquery,我已经在其他问题中搜索了解决方案,但没有找到。 因此,我的问题如下: 我有一个用户可以挂载表达式的页面。例如,如果他们想让一些教授学习课程1和课程2,他们会创建如下表达式: (课程1和课程2) 但是当我使用EF时,如果我加上“AND”,我就没有教授了。。。如果我改为“或”,我会让一些教授有1或2门课,也许其中一门课有两门课 我需要的教授总是有两门课程(课程1和课程2) 我怎样才能做到这一点 (如果我的解释太令人困惑,请告诉我,我会用另一种方式尝试!)我试图理解您的解释,请尝试以下内容,并让我们知

我已经在其他问题中搜索了解决方案,但没有找到。 因此,我的问题如下: 我有一个用户可以挂载表达式的页面。例如,如果他们想让一些教授学习课程1和课程2,他们会创建如下表达式:
(课程1和课程2)

但是当我使用EF时,如果我加上“AND”,我就没有教授了。。。如果我改为“或”,我会让一些教授有1或2门课,也许其中一门课有两门课

我需要的教授总是有两门课程(课程1和课程2)

我怎样才能做到这一点


(如果我的解释太令人困惑,请告诉我,我会用另一种方式尝试!)

我试图理解您的解释,请尝试以下内容,并让我们知道您所寻找的逻辑是否正确?或者你想要别的结果

from x in db.professors.Where(x => x. professorId == professorId && (x.courseid == 'course1' && x.ukat == 'course2'))
也许:

var result = db.Professors.Where(p => 
    p.Cursos.Count(c => searchedCourses.Contains(c.CourseId)) == searchedCourses.Count());

通过这种方式,您可以获取所有教授,在指定的搜索中筛选他们的课程以匹配这些课程,并仅获取具有相同数量的筛选课程和搜索课程的教授。

我需要一些动态内容。我可以有这样的表达:(course1和course2和course3)或(course4或course5)谢谢,我试试这个!