以下表达式在 LINQPad 中正确运行。使用 EntityFramework 它运行但不排序(没有运行时错误只是错误的结果)。
非常简单的表格:
分数 - 整数 0 -300
类型 - 字符串 - 其中四个(男性 - 女性,游戏和系列
日期 - 这里不重要
var scoresTest = from h in HighScores
where h.Date > startDate
orderby h.Type, h.Score descending // doesn't sort in EF
group h by h.Type into g
let fewItems = g.Take(15)
select new {key = g.Key, scores = fewItems };
我使用的是相同的 Db,可以看到从 EF 返回的分数只是数据库中的第一个分数。
谁能建议如何重写查询以在 LINQPad 和 EF 中工作。
:)