如何使用asp.net web页面自定义分页控件

 我来答
小李新观察
2017-05-06 · TA获得超过545个赞
知道小有建树答主
回答量:216
采纳率:100%
帮助的人:43.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上一页,下一页等页面了。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式