日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
詳細(xì)闡述linq動(dòng)態(tài)排序

linq動(dòng)態(tài)排序不是很好實(shí)現(xiàn)的,很多開發(fā)者都在這個(gè)方面有疑惑,所以筆者今天分享一下自己的經(jīng)驗(yàn),希望能給大家?guī)韼椭?/p>

創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供瀘縣網(wǎng)站建設(shè)、瀘縣做網(wǎng)站、瀘縣網(wǎng)站設(shè)計(jì)、瀘縣網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、瀘縣企業(yè)網(wǎng)站模板建站服務(wù),10年瀘縣做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

想實(shí)現(xiàn)linq動(dòng)態(tài)排序就是linq的order by 后跟動(dòng)態(tài)的函數(shù)可以用委托實(shí)現(xiàn),但是發(fā)現(xiàn)實(shí)現(xiàn)委托函數(shù)時(shí)候:

 
 
 
  1. int testSelector(post p)
  2. {
  3.    ret urn p.Uu;
  4. }

這個(gè)返回類型受到了限制僅是相同類型的字段可以動(dòng)態(tài)排序是不是Func selector 這個(gè)的實(shí)現(xiàn)我理解的有問題 ?

 
 
 
  1. public IEnumerable  Sort ( string userName, Func  
  2. selector)
  3.       {
  4.           return from post in posts
  5.                  where post.UserName == userName
  6.                  orderby selector(post) descending
  7.                  select post;
  8.       } 

這個(gè)函數(shù)的TKey限制只能是一種類型 ?有什么好的實(shí)現(xiàn)嗎?

linq動(dòng)態(tài)排序具體解決的代碼

 
 
 
  1. public   class OrderBy
  2.   List  posts =  new List ();  
  3.   public List   GtePost()  
  4.   {
  5.     for (int i = 0, j=1000; i < 1000 ; i++, j--)
  6.      {
  7.         post p = new post();
  8.         p.Ty = i;
  9.         p.Uu=j;
  10.         p.UserName = "1";
  11.         posts.Add(p);
  12.      }
  13.    return posts;
  14.   }
  15.    
  16. /**//// 
  17.   /// Func  委托的實(shí)現(xiàn)  
  18.   /// 
  19.  ///   
  20.   ///   可以動(dòng)態(tài)設(shè)置排序的列  
  21. int testSelector(post p)
  22. {
  23.     return p.Uu;
  24. }
  25.  public  IEnumerable  GetData()  
  26.     {
  27.        GtePost();
  28.        return Sort("", testSelector);
  29.     }
  30. public IEnumerable  Sort ( string userName, Func
  31.  TKey> selector)
  32.   {
  33.      return from post in posts
  34.      where post.UserName == userName
  35.      orderby selector(post) descending
  36.      select post;
  37.   }
  38. }

linq動(dòng)態(tài)排序Code

 
 
 
  1. void BindData()
  2.   {
  3.       OrderBy o = new OrderBy();                   
  4.       post p=new post ();
  5.       this.dataGridView1.DataSource = o.GetData().ToList ();               
  6.   }

以上就是對(duì)linq動(dòng)態(tài)排序解決方法的簡單介紹。


新聞標(biāo)題:詳細(xì)闡述linq動(dòng)態(tài)排序
網(wǎng)站網(wǎng)址:http://www.dlmjj.cn/article/dpdhish.html