2011-06-12 48 views
0

我有三張桌子。問題,紀律和問題有紀律。 QuestionHasDiscipline存在問題和紀律之間的關係。他們都有一個獨特的專欄來識別他們。在linq聲明中有關係?

我想寫一個linq語句,返回所有有一定紀律的問題。

我已經開始做的是這樣的:

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

但它顯然是可怕的錯誤。我嘗試過不同的方法,但現在我轉向更大的想法。任何建議?

+0

看起來非常相似,另外一個問題我今天回答:http://stackoverflow.com/questions/6322145/entity-framework-and-1-to-many-many-to-1-1-1-關係/ 6322197#6322197 – 2011-06-12 16:11:21

回答

2

您可以使用帶有謂詞的.Any()

from q in context.Questions 
where context.QuestionHasDiscipline.Any(d => d.QuestionId == q.QuestionId) 
select q; 
+0

謝謝,工作。我必須學習那些...... – Phil 2011-06-13 16:52:35

+0

只需要說,我一直回到這一個,它每次都能節省我。再次感謝! – Phil 2011-07-25 17:15:30

+0

很高興這有幫助。 – recursive 2011-07-25 21:06:54