DateTime列表中的OrderByDescending不起作用?

时间:2011-07-25 00:15:41

标签: c# .net c#-4.0

在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被忽略了。

我做错了什么?

1 个答案:

答案 0 :(得分:3)

你确定要把订单放在&按正确的顺序分开?

尝试:

var hires = (from e in md.Employee
    where e.HireDate.Year == 2011
    select e.HireDate).Distinct().OrderByDescending(e => e);