我正在尝试运行以下代码,但是当我检查 SQL 探查器时,它看起来像是在表上运行完整选择,然后在从数据库返回所有结果后进行分组。任何帮助表示赞赏。
var result = _dbContext.LogEvent.GroupBy(x => x.EventLevel)
.Select(g => new
{
eventType = g.Key,
total = g.Sum(i => i.Occurrences)
})
.ToList();
最佳答案
更新:
下面链接的问题已解决,预计适用于 EF 2.1.0。您现在应该可以使用预览包尝试一下!
<小时/>原始答案:
It doesn't look like this is currently supported ,但似乎有人看到了这篇文章并创建了链接的问题。
这个概念是一个相当复杂的逻辑,EF7 还处于早期阶段。 .Net 的 GroupBy
不会直接转换为 SQL 的 GROUP BY
,除非您仅使用聚合或 Select
中的键来跟进它。如果您雄心勃勃,可以致力于提供拉取请求,或 continue to use EF6.
关于asp.net-core - Entity Framework 7 分组依据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30667870/