それぞれのグループからすべての要素を取得する方法はありますか?
LINQのGroupByメソッドを使用すると、指定したキーでコレクションをグループ化し、グループをループして各グループのすべての要素を取得できます。
以下是一个示例代码,演示如何使用LINQ的GroupBy方法来获取分组中的所有元素:
class Program
{
static void Main(string[] args)
{
List<Person> people = new List<Person>
{
new Person { Name = "Alice", Age = 25 },
new Person { Name = "Bob", Age = 30 },
new Person { Name = "Alice", Age = 35 },
new Person { Name = "Bob", Age = 40 },
new Person { Name = "Charlie", Age = 45 }
};
var groups = people.GroupBy(p => p.Name);
foreach (var group in groups)
{
Console.WriteLine("Group: " + group.Key);
foreach (var person in group)
{
Console.WriteLine(" " + person.Name + ", " + person.Age);
}
}
}
}
class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
上記の例では、人員の集まりを名前でグループ化し、それぞれのグループをforeachループを使って反復処理し、各グループのすべての要素を取得します。