zoukankan      html  css  js  c++  java
  • Linq配合AspNetPager高效分页

    最近正在学习Linq,看到分页这里的时候感觉真的很简单,可是又担心学着学习就把知识混在一起,不知道大家在刚学的时候是不是跟我一样,因为他有的地主真的太像SQL了

    分页方式:

    获取数据总条数: var Count = db.XXX.Count();   如果要是以往的写法还得写 select count(*) from XXXX; 还得调用SQLHelper.cs类里面的方法才行,现在就这么一句话就搞定……  汗额..

    再使用Skip()和Take()方法进行分页

    说明,引用至李永京博客想学Linq去他博客吧:

    说明:Skip()跳过集合的前n个元素;延迟。即我们跳过给定的数目返回后面的结果集。 

    说明:Take()获取集合的前n个元素;延迟。即只返回限定数量的结果集。

     

    下面就把代码贴出来

    Aspx页面代码片段:只有一个GridView和一个AspNetPager控件,没有其他的代码;

    <div>
            
    <asp:GridView ID="GridView1" runat="server">
            
    </asp:GridView>
            
    <webdiyer:AspNetPager ID="AspNetPager1" runat="server" OnPageChanged="AspNetPager1_PageChanged"
                PageSize
    ="15" UrlPaging="True">
            
    </webdiyer:AspNetPager>

         </div> 


    后台代码:

                var Count = db.InBill.Count();
                AspNetPager1.RecordCount 
    = Count;

                var paging 
    = (from i in db.InBill
                              orderby i.InDate descending
                              select i).Skip(AspNetPager1.StartRecordIndex 
    - 1).Take(AspNetPager1.PageSize);   //索引方式:分页操作;

                GridView1.DataSource 
    = paging;
                GridView1.DataBind();
  • 相关阅读:
    Java多线程之二:Thread
    并发编程之Future/FutureTask/CompletionService/CompletableFuture
    Java8使用并行流(ParallelSream)
    IDEA 运行报Command line is too long解法
    Comparator VS Comparable
    设计模式6-观察者模式
    设计模式-策略模式VS工厂模式
    设计模式4-策略模式
    设计模式5-代理模式
    设计模式3-工厂模式
  • 原文地址:https://www.cnblogs.com/zhuiyi/p/2064716.html
Copyright © 2011-2022 走看看