3

これをlinqに変換するにはどうすればよいですか?

select i.CatName,COUNT(*) as n_items
from ixcxs i
group by i.CatName

またはラムダ式が役立ちます

4

2 に答える 2

4

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() });
于 2012-12-14T00:31:12.677 に答える
2

試す

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()
}
于 2012-12-14T00:10:26.470 に答える