zoukankan      html  css  js  c++  java
  • ListView高效分页

    • 当数据量非常大的时候,采用ListView内置的分页功能,效率会很低,因为ListView内置的分页功能是当每次请求数据的时候都将所有的数据读出然后选择页面中所请求的数据,因此改用以下方法来提高分页效率。以下方法的原理是:在数据库中进行分页操作,根据所请求的数据来直接将数据库中的数据条数取出,这样每次请求数据的时候,就减轻了服务器的负担。
    • 首先添加数据集查询方法:GetPagedData(在数据库中取得数据分页的方法)和QueryCount(查询所有数据的行数的方法)
      GetPagedData:
      select * from
      (
      SELECT Id, Name, Age, Sex,Row_Number() over(order by id) row_number FROM dbo.T_Persons
      ) t
      where t.row_number>@startRowIndex and t.row_number<
      =@startRowIndex+@maximumRows
      其中startRowIndex和maximumRows参数需要手动在Parameters属性中设置                         QueryCount:
      SELECT COUNT(*) FROM T_Persons
    • 配置ObjectDataSource,让ListView自动生成Template,然后修改ObjectDataSource的EnablePaging="True",SelectCountMethod设置为取得行数的方法(SelectCountMethod="QueryCount"),删除<SelectParameters>内容。
    • 在<ListView>后面添加<DataPager>:
      <asp:DataPager ID="DataPager1" runat="server" PagedControlID="ListView1">
          <Fields>
          <asp:NextPreviousPagerField ButtonType="Link" ShowFirstPageButton="True" ShowNextPageButton="False" FirstPageText="首页" />
          <asp:NumericPagerField ButtonCount="5" ButtonType="Link" />
          <asp:NextPreviousPagerField ButtonType="Link" ShowLastPageButton="True" ShowPreviousPageButton="False" LastPageText="末页" />
          </Fields>
          </asp:DataPager>

    [转载]ListView高效分页

  • 相关阅读:
    iOS 上线流程
    静态库和动态库的区别
    iOS如何生成.a文件
    苹果公司软件
    iOS 的主要框架
    多线程图解
    判断屏幕横屏/竖屏
    最大堆构建和堆排序
    hadoop2.6.0 + hbase-1.0.0 伪分布配置
    centos6 名字服务dnsmasq配置
  • 原文地址:https://www.cnblogs.com/YoungPop-Chen/p/3291739.html
Copyright © 2011-2022 走看看