我该如何在linq中按月份名称和年份排序?目前它是按字母顺序排序,这在报告显示时会导致问题。
我想要的结果是2011年11月,2011年12月,2012年1月,2012年2月。
我的主要问题是MonthList的结果,因为它是monthlist1和monthlist2的联合。
感谢您的帮助和见解。
我想要的结果是2011年11月,2011年12月,2012年1月,2012年2月。
我的主要问题是MonthList的结果,因为它是monthlist1和monthlist2的联合。
感谢您的帮助和见解。
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();
四月、八月、十二月……
等等吗? - Jodrell