具有条件的OrderByDescending的正确语法是什么?

时间:2013-05-24 22:11:08

标签: c# .net linq

我想知道具有条件

的OrderByDescending的正确语法是什么

我有以下代码,

_mobileRepository.GetAllEpisodes().OrderByDescending(x => x.AirDate).ToList();

但是现在,我想只列出AirDate> = 2012年,我可以这样做吗?

_mobileRepository.GetAllEpisodes().OrderByDescending(x => (x.AirDate> 2012)).ToList();

这里的语法是什么?

4 个答案:

答案 0 :(得分:2)

首先过滤AirDate > = 2012,然后应用OrderByDescending

_mobileRepository.GetAllEpisodes().Where(x =>  x.AirDate >= 2012)
                               .OrderByDescending(x => x.AirDate).ToList();

答案 1 :(得分:2)

_mobileRepository.GetAllEpisodes().Where(x => x.AirDate >= 2012).OrderByDescending(x => x.AirDate).ToList();

答案 2 :(得分:2)

要过滤结果,请使用Where而不是OrderByDescending

_mobileRepository.GetAllEpisodes()
  .Where(x => x.AirDate >= 2012)
  .OrderByDescending(x => x.AirDate)
  .ToList();

答案 3 :(得分:1)

要过滤数据,您可以使用the Where extension method

mobileRepository.GetAllEpisodes()
   .Where(x=>x.AirDate > 2012)
   .OrderByDescending(x => x.AirDate).ToList();