linqで月の名前と年で並べ替えるにはどうすればよいですか。現在、アルファベット順に並べられているため、レポートが表示されるときに問題が発生します。
2011年11月、2011年12月、2012年1月、2012年2月を探しています
私の主な関心事は、monthlist1とmonthlist2の和集合であるため、結果のMonthListにあります。
ヘルプと洞察に感謝します
var monthlist1 = data.
Select(x => new { wkdate = x.WKENDDATE }).
OrderBy(y => y.wkdate).
Select(m => new {
monthname = m.wkdate.ToString("MMM yyyy",
CultureInfo.CreateSpecificCulture("en-US"))
}).
Distinct().
ToList();
var monthlist2 =
data.Select(x => new { wkdate =
ExportHelper.getSplitEndDate(x.WKENDDATE).AddDays(1)})
.OrderBy(y => y.wkdate)
.Where(l => ExportHelper.isSplitWeek(l.wkdate.AddDays(-6), l.wkdate) == true)
.Select(m => new {
monthname = m.wkdate.ToString("MMM yyyy",
CultureInfo.CreateSpecificCulture("en-US"))
})
.Distinct()
.ToList();
var monthlist =
monthlist1.
Union(monthlist2).
Distinct().
OrderBy(m=> m.monthname).
ToList();