2016-11-13 99 views
0

我有一個Exam表條件計,然後ExamResults其中包括特定考試的所有問題。此表將包含的問題,選擇答案,以及AnswerPower,表示如果答案是正確與否:的GroupBy和使用LINQ

  • (指正確的),
  • (指錯了),
  • NULL(表示未答覆,將被視爲錯誤)。

我試圖得到Count由章節分組的特定考試的錯誤答案。

下面會給我按章分組答案的數量,但我不知道哪兒來設定條件只計算錯誤的答案它可以簡單地AnswerPower!=1

   var query = ex.ExamResults 
       .GroupBy(p => new 
      { 
       p.Question.Chapter.ChapterName, 
       p.AnswerPower 
      }) 
      .Select(g => new 
      { 
       g.Key.ChapterName, 
       Mistakes = g.Count() 
      }); 

回答

2

裏面count你可以給像下面的條件,請注意,我已經從GroupBy

去除
1
ex.ExamResults 
    .GroupBy(p => new 
      { 
       p.Question.Chapter.ChapterName, 
       p.AnswerPower 
      }) 
    .Where(p => p.AnswerPower!=1) 
    .Select(g => new 
      { 
       g.Key.ChapterName, 
       Mistakes = g.Count() 
      }); 
+0

「Where」中沒有直接的'p.AnswerPower',我想你的意思是'p.Key.AnswerPower!= 1' – omarmallat