在lambda表达式中,如何按DateTime值列表而不是对象进行排序?例如,我想在以下查询中获取最近3个支付日期:
var hires = (from e in md.Employee
where e.HireDate.Year == 2011
select e.HireDate).Distinct();
//at this point hires =
6/3/2011
5/15/2011
6/1/2011
7/1/2011
我的假设是我可以做.OrderByDescending(x => x).Take(3)
,但是当我这样做时,我没有得到7/1/2011(只是上面的前3个)。这就像OrderByDescending被忽略了。
我做错了什么?
答案 0 :(得分:3)
你确定要把订单放在&按正确的顺序分开?
尝试:
var hires = (from e in md.Employee
where e.HireDate.Year == 2011
select e.HireDate).Distinct().OrderByDescending(e => e);