Как это сделать в ADO.NET Entities Framework

У меня есть таблица под названием BlogPost, которая имеет отношение 1 ко многим с таблицей комментариев. (В комментарии есть внешний ключ BlogPostId.)

Теперь я хочу получить все сообщения, а также последние комментарии к каждому сообщению. Я пробовал с s/t, как показано ниже, но это не работает.

from r in Db.BlogPost
select new {Post = r, LatestComment = r.Comments.Last()};

Сообщение об ошибке звучит так, будто Last() не поддерживается EF. Есть ли способ справиться с этим?


person Buu Nguyen    schedule 15.12.2008    source источник


Ответы (1)


Как насчет r.Comments.OrderByDescending(x=>x.Id).FirstOrDefault()?

По сути, заказать его (сначала самый последний), а потом взять первый?

person Marc Gravell    schedule 15.12.2008