倔强的土豆

这只是一个备份!源地址:http://blog.csdn.net/stubbornpotatoes
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

利用AspNetpager控件分页

Posted on 2011-08-12 23:42  倔强的土豆  阅读(181)  评论(0编辑  收藏  举报


        软件设计人员在应对大数据量时,有很多的解决方案,如优化代码、使用存储过程、建立索引、批量处理、分页等等,总有一种或几种是能解决数据响应慢问题的,这次做项目用到了分页的技术,分页除去应对大数据量还能一定程度让页面看起来更为美观。

        分页一般分为两种:一种是假分页,它其实应对大数据量是没有什么明显的作用,只是起到了美化页面的作用,让页面看起来不那么凌乱,因此在小数据量的时候是可以采用的,假分页的控件和方法很多,微软的Gridview、PagedDataSource和Repeater控件都可以用来分页,这里不做详细的讨论。

        第二种是真分页,如同名字这个就是真的把数据分开,从数据库开始分,意思也就是页面当前显示哪些数据就从数据库拿哪些数据,分页的方式也有很多种,我用了一种比较简便的方法,用AspNetPager分页控件进行分页,此控件支持VS05到10的所有版本,有很强大的功能,并且免费,可在google中搜索AspNetPager下载即可。

        下面主要来演示一下我在使用它的过程,下载完AspNetPager控件的DLL文件后,首先在VS中引用AspNetPager控件的DLL文件,然后在工具箱的空白处右击选择“选择项”,如下图:

然后在打开的页面中,勾选AspNetPage选项,如果没有,则选择浏览按钮,找到刚才的dll文件即可,如下图:


        这时候工具箱中就出现AspNetpager的控件,拖入所需要的页面,然后去属性页面设置该控件的分页大小pagesize属性,并且设置它的触发事件onpagechanged。

       进入CS页面就开始编码阶段了,在onpagechanged事件中绑定数据,代码如下:


        rptNews为Repeater控件,这就是界面层的绑定,BLL层只需往下传递起始页和结束页的参数即可。

       DAL层为数据库操纵层,这里面主要写操作数据库的SQL语句,具体写法如下:


       到此为止,我们的分页就实现了,至于不懂ROW_NUMBER() 函数的童鞋可以去SQL查看帮助。