帮助这个Linq查询

时间:2011-02-03 14:29:30

标签: c# linq

我希望得到一组学生,他们的平均成绩(通过添加每个科目分数并除以科目数量)高于55.

由于今年是2011年,我还需要仅为2011年的记录计算此字段。

enter image description here

private void cmbGradeParalelo_SelectedIndexChanged(object sender, EventArgs e)
{
    StudentRepository studentRepo = new StudentRepository():
    dataGridView1.DataSource = studentRepo.FindAllStudents()
                                          .Where(s=>s.ScoreRecords.)
}

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

假设每个学生可能有多个ScoreRecords,也许可以尝试

dataGridView1.DataSource = studentRepo.FindAllStudents
                                      .Where(s=> s.ScoreRecords
                                                  .Where(r => r.Year == 2011)
                                                  .Average(r => r.FinalGrade) > 55) 

答案 1 :(得分:0)

.Where(s=>s.ScoreRecords.Year == 2011).Average(f => f.FinalGrade) > 55));