LINQ中的如何用OrderBy实现按照两个字段升序、降序排序操作?


在公司或许有这种需求,先根据第一个某个字段按照升序排序,然后如果相同,在按照第二个某个字降序排序,我们该怎么去实现呢?

现在来教教大家分别使用Labmda和LINQ进行这种操作。

 

1.先按照第一个字段升序排序,然后相同数据按照降序排序?

//Labmda方式:

xxx.OrderBy(u=>u.id).ThenByDescendiing(u=>u.time);

//LINQ方式:

 var values=from u in xx

      Orderby u.id ascending, u.time descending

      select u;

 

2.先按照第一个字段降序排序,然后相同按照升序排序?

//Lambda方式:

xxx.OrderByDescending(u=>u.id).ThenBy(u=>u.time);

//LINQ方式:

var values=from u in xx

      Orderby u.id descending , u.time ascending

      select u;

 

 //Lambda:

descending:降序

ascending:升序

 

//LINQ:

降序:OrderBy和ThenBy

升序:OrderByDescending和ThenByDescending

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM