次のようなSampleDataというクラスがあるとする。
public class SampleData
{
public int Id;
public string Name;
}
ここでは、SampleDataのNameが同一のデータが何件存在するかをカウントする。
var sampleDataList = new List();
sampleDataList.Add(new SampleData() { Id = 1, Name = "山田" });
sampleDataList.Add(new SampleData() { Id = 2, Name = "田中" });
sampleDataList.Add(new SampleData() { Id = 3, Name = "鈴木" });
sampleDataList.Add(new SampleData() { Id = 4, Name = "山田" });
foreach (var itemCount in sampleDataList.GroupBy(x => x.Name)
.Select(x => new { Name = x.Key, Count = x.Count() }))
{
Console.WriteLine($"{itemCount.Name} 件数:{itemCount.Count}");
}
実行結果
山田 件数:2 田中 件数:1 鈴木 件数:1