Я сейчас занимаюсь разработкой форума.Я новичок в LINQ и EF.У меня на форуме есть экран, который показывает список тем с самыми новыми темами в первую очередь.
Проблема в том, что «самые последние» относятся к ответам на темы.Поэтому я не хочу упорядочивать список по дате публикации темы, а хочу упорядочить список по дате публикации последнего ответа в теме.Так что темы с новыми ответами всплывают обратно в начало списка.Это довольно просто, если бы я знал, что у каждой темы есть хотя бы один ответ;Я бы просто сделал это:
var topicsQuery = from x in board.Topics
orderby x.Replies.Last().PostedDate descending
select x;
Однако во многих случаях тема не имеет ответов.В этом случае я бы хотел использовать дату публикации темы.Есть ли способ в моем запросе linq упорядочить по x.PostedDate
, если в теме нет ответов?Я смущен этим, и любая помощь будет оценена.С помощью приведенного выше запроса он разбивается на темы без ответов, поскольку x.Replies.Last()
предполагает, что ответы есть.LastOrDefault()
не работает, потому что мне нужен доступ к свойству PostedDate, в котором также предполагается, что ответ существует.
Заранее благодарим вас за понимание.