linq的group
时间: 2023-08-15 13:13:24 浏览: 43
LINQ(Language Integrated Query)是.NET Framework中的一种查询语言扩展,它可以用于对各种数据源进行查询和操作。在LINQ中,使用`group by`关键字可以对数据进行分组操作。
使用`group by`关键字可以将数据按照指定的键进行分组,然后可以对每个分组进行聚合操作或者筛选出特定的分组。
以下是一个使用LINQ的`group by`示例:
```csharp
var students = new[]
{
new { Name = "Alice", Grade = "A" },
new { Name = "Bob", Grade = "B" },
new { Name = "Charlie", Grade = "A" },
new { Name = "Dave", Grade = "C" },
new { Name = "Eve", Grade = "B" }
};
var groupedStudents = from student in students
group student by student.Grade;
foreach (var group in groupedStudents)
{
Console.WriteLine("Grade: " + group.Key);
foreach (var student in group)
{
Console.WriteLine(" - " + student.Name);
}
}
```
在上面的示例中,我们有一个包含学生姓名和成绩的集合。我们使用`group by`关键字将学生按照成绩进行分组,并遍历每个分组,输出每个分组的成绩和学生姓名。
输出结果将会是:
```
Grade: A
- Alice
- Charlie
Grade: B
- Bob
- Eve
Grade: C
- Dave
```
这样就实现了按照成绩对学生进行分组的操作。你可以根据自己的需求,按照不同的键进行分组和聚合操作。