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