Linq to sql 在LINQtoSQL中,如何使用max执行子查询?

Linq to sql 在LINQtoSQL中,如何使用max执行子查询?,linq-to-sql,correlated-subquery,Linq To Sql,Correlated Subquery,var ItemScores=(来自a in response.ItemScores,其中a.LastUpdated== (从response.ItemScores中的d开始,其中a.Word\u Id==d.Word\u Id选择a.LastUpdated).Max()选择a) 上面的查询应该只返回每个单词的最新ItemScore。 每个单词可以有一个或多个itemScore,因为多个记分员可以为同一个单词打分。 我试图获得一个项目分数列表(每个单词一个),这样每个项目分数都是该单词的最新分数

var ItemScores=(来自a in response.ItemScores,其中a.LastUpdated== (从response.ItemScores中的d开始,其中a.Word\u Id==d.Word\u Id选择a.LastUpdated).Max()选择a)

上面的查询应该只返回每个单词的最新ItemScore。 每个单词可以有一个或多个itemScore,因为多个记分员可以为同一个单词打分。 我试图获得一个项目分数列表(每个单词一个),这样每个项目分数都是该单词的最新分数


不幸的是,此查询返回了所有项目分数(每个单词有多个项目分数),好像完全忽略了上次更新的子查询。

谢谢LukeH。我刚刚意识到我只是有一个“a.LastUpdated”,在子查询中应该是“d.LastUpdated”。
var itemScores = response.ItemScores
                         .GroupBy(x => x.Word_Id)
                         .Select(g => g.OrderByDescending(x => x.LastUpdated)
                                       .First());