SQL
このステートメントをクエリに変換する必要がありLinq-Entity
ます...
SELECT name, count(name) FROM people
GROUP by name
SQL
このステートメントをクエリに変換する必要がありLinq-Entity
ます...
SELECT name, count(name) FROM people
GROUP by name
クエリ構文
var query = from p in context.People
group p by p.name into g
select new
{
name = g.Key,
count = g.Count()
};
メソッドの構文
var query = context.People
.GroupBy(p => p.name)
.Select(g => new { name = g.Key, count = g.Count() });
Dictionary
便利な拡張機能は、 for 高速ルックアップ (ループなど) で結果を収集することです。
var resultDict = _dbContext.Projects
.Where(p => p.Status == ProjectStatus.Active)
.GroupBy(f => f.Country)
.Select(g => new { country = g.Key, count = g.Count() })
.ToDictionary(k => k.country, i => i.count);
元はここにあります: http://www.snippetsource.net/Snippet/140/groupby-and-count-with-ef-in-c
EF 6.2ではうまくいきました
var query = context.People
.GroupBy(p => new {p.name})
.Select(g => new { name = g.Key.name, count = g.Count() });