我有一个结构体:
struct Student
{
string Name;
int ClassesMissedToday;
}
现在我有一个结构体的列表:
List<Student> Students = new List<Student>();
我该如何在LINQ中表达以下内容:
Students.Add(new Student { Name = "Bob", ClassesMissedToday = 2 })
Students.Add(new Student { Name = "Bob", ClassesMissedToday = 0 })
Students.Add(new Student { Name = "Joe", ClassesMissedToday = 0 })
Students.Add(new Student { Name = "Bob", ClassesMissedToday = 1 })
(伪代码)
foreach Student.Name in Students:
Console.WriteLine("Total Classes Missed Total: {0}", ClassedMissedToday(count all of them)
我知道这对一些人来说可能很琐碎,但出于某种原因,我似乎找不到任何有效的简化示例。
有什么想法吗?
Aggregate()
但不确定它在这种情况下如何更有用? - sllstudents.Aggregate(0, (t,s ) => t + s.ClassesMissedToday)
相同,但如果需要更多的灵活性,则可以使用Sum(在这种特定情况下,Sum更好)。 - Alexei Levenkov