У меня есть две таблицы Clients и ClientEvaluations, эти таблицы связаны через внешний ключ.Каждая ClientEvaluation имеет FK для одной клиентской сущности.
Теперь мне нужно запросить у всех клиентов их последнюю оценку, не более одной оценки для каждого клиента.Обратите внимание, что у каждой оценки есть дата.
Этот код достигает этого в SQL.
SELECT C.Id, MAX(E.EvaluationDate) FROM [dbo].[Clients] as C
JOIN [dbo].[ClientEvaluations] AS E ON E.ClientId = C.Id
GROUP BY C.Id
Я также пробовал это, но проблема с тем, что я пытаюсь достичь, заключается в том, что янеобходимо вернуть из этого запроса также свойства объекта Client.
var lastEvaluations = _db.ClientEvaluations.GroupBy(x => x.ClientId, (x, y) => new { ClientId = x, EvaluationDate = y.Max(z => z.EvaluationDate), }).ToList();
Но запрос здесь, конечно, возвращает только ClientId и дату, как я могу включить всю сущность клиента?