Следующий запрос LINQ получает данные за последние 12 месяцев и агрегирует их по месяцам.
Я хотел бы упорядочить их в хронологическом порядке, причем текущий месяц является самым последним в запросе.
Какой лучший способ добиться этого?
public IEnumerable<EventMonthlySummaryMonthly> GetLastYearEventGrid()
{
DateTime currentDate = DateTime.Now.AddYears(-1).AddMilliseconds(1);
var summary = from p in db.Events
where (p.StartDate > currentDate) && (p.StartDate != null)
let k = new
{
Month = p.StartDate.Month
}
group p by k into t
select new EventMonthlySummaryMonthly
{
Month = t.Key.Month,
EventsWhatsOn = t.Count(p => p.EventTypeId == 1),
EventsRegular = t.Count(p => p.EventTypeId == 2),
EventsExhibitions = t.Count(p => p.EventTypeId == 3),
EventsAll = t.Count(p => p.EventTypeId != null),
};
return summary;
}