has-отношение в linq-заявлении? - PullRequest
0 голосов
/ 12 июня 2011

У меня есть три таблицы. Вопрос, Дисциплина и Вопрос Имеет Дисциплину. QuestionHasDiscipline содержит отношение между вопросом и дисциплиной. Все они имеют уникальный id-столбец для их идентификации.

Я пытаюсь написать linq-оператор, который возвращает все вопросы, имеющие определенную дисциплину.

То, что я начал делать, это:

               var questions = (from q in context.Questions
                             where (from d in context.QuestionHasDiscipline
                                    where d.QuestionId == q.QuestionId
                                    ) ...

Но это, очевидно, ужасно неправильно. Я пробовал разные подходы, но теперь я обращаюсь к великим умам. Есть предложения?

1 Ответ

2 голосов
/ 12 июня 2011

Вы можете использовать .Any() с предикатом.

from q in context.Questions
where context.QuestionHasDiscipline.Any(d => d.QuestionId == q.QuestionId)
select q;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...