これをlinqに変換するにはどうすればよいですか?
select i.CatName,COUNT(*) as n_items
from ixcxs i
group by i.CatName
またはラムダ式が役立ちます
CatNameを取得するためにグループから最初のアイテムを選択する必要はありません-代わりにグループ化キーを使用してください:
var query = from i in ixcxs
group i by i.CatName into g
select new {
CatName = g.Key,
n_items = g.Count()
};
メソッド構文と同じ:
var query = ixcxs.GroupBy(i => i.CatName)
.Select(g => new { CatName = g.Key, n_items = g.Count() });
試す
ixcxs.GroupBy(g => g.CatName)
.Select(s => new
{
CatName = s.Key,
n_items = s.Count()
});
クエリ構文で同じこと:
from i in ixcxs
group i by i.CatName into g
select new
{
CatName = g.Key,
n_items = g.Count()
}