Для этого должен быть однострочный файл, и я просто не могу его найти.
Учитывая этот запрос:
from x in new XPQuery<XPContent>(s)
select new { x.Category, x.ContentType, x.Name, x.ContentID, x.Date }
Мне нужно выбрать запись с наибольшей датой для каждого отдельного ContentID. Можно ли это сделать с умом с помощью LINQ? Прямо сейчас я делаю следующее:
var q = (from x in new XPQuery<XPContent>(s)
select new { x.Category, x.ContentType, x.Name, x.ContentID, x.Date }).ToList();
var r = q.ToLookup(item => item.ContentID);
foreach (var rItem in r) {
var s = rItem.OrderByDescending(a => a.Date).First();
/* do stuff with s */
}
... но ToLookup кажется неуклюжим. Или у меня есть лучшее (простейшее) решение?
Кроме того, я знаю, что мне не следует использовать ToList, но, пожалуйста, пока проигнорируйте его.
Заранее спасибо!