如何使用asp.net web页面自定义分页控件
1个回答
展开全部
假如数据库有10000条记录,默认SQL是分页把这10000条记录都取出来,然后利用GridView内置功能分页,显示出来,那么只显示20条,SQL也是取出1000条,而自定义分页则是利用SQL,使用20条,就从数据库里去20条,其他的不取,所以,效率较高,但是实现稍微麻烦点。
假设你要实现类似如下一个自定义产品分页列表
数据库主要设计如下字段
那么自定义SQL分页需要思考如下几个问题:
(1)总共有多少条记录。(可用
select
count(*)
from
Products
得到
10000条)
(2)页面大小NumRows。(也就是每页记录数,例如
20条也一页)
由上面(1)和(2)就可以得出可以分多少页。
10000/20=500页。
(3)当前是第几页
startRowIndex。
例如用户点击到第3页,每页20条,那么第4页就是
从
3*20+1=61开始计算。
知道了上面参数,还需要知道SQL提供了一个
Row_Number函数,他可以把数据库每行增加一个索引,通过比较
Row在
@startRowInx
和
@StartRowIndex+@NumRows-1
就可以获取分页的记录数。具体如下
当取到上面的数据后,就可以自己build上一页,下一页等页面了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询