0

我已经在其他问题中搜索了解决方案,但没有找到。所以,我的问题如下:我有一个页面,用户可以在其中安装表达式。例如,如果他们想要一些教授课程 1 和课程 2,那么他们会创建这样的表达式: (course 1 AND course 2)在页面中。

但是当我使用 EF 时,如果我输入“AND”,我就没有教授......如果我改为“OR”,我会得到一些教授 1 或 2,然后其中一个可能有两门课程。

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

我怎样才能做到这一点?

(如果我的解释太混乱,请告诉我,我会换一种方式尝试!)

4

2 回答 2

0

我试图理解您的解释,请尝试以下操作,让我们知道您是否正在寻找逻辑?或者你想要其他结果。

from x in db.professors.Where(x => x. professorId == professorId && (x.courseid == 'course1' && x.ukat == 'course2'))
于 2015-01-28T11:18:15.883 回答
0

也许:

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

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

于 2015-01-28T11:33:58.073 回答