我自己写的一个分页控件(源码和演示代码)PostBack分页版 for vs2003、SQL Server

自然框架 2008-04-29 11:25:53
一、分页控件的工作层次
如果按照三层的划分方式来说,应该算作工作在 UI层 和 逻辑层。
在分页控件内部会调用“数据访问函数库”来访问数据库,得到记录集之后再绑定到指定的显示数据的控件。

当然这里只是打个比方,我并没有按照三层的规范来写这个分页控件,我的目的只是想少写点代码。

二、适用范围
目前适用于 vs2003 和 SQL Server 2000
因为是在这两个环境下开发的,尤其是对于 SQL Server 2000 进行了一些优化。
当然也是可以在 vs2005 和 SQL Server 2005 下使用,只是没有针对 05系列 进行优化。
可以在vs2005的项目里引用 分页控件的dll文件,但是可能需要在电脑上安装 .net1.1 的框架。

三、优点
1、不必使用存储过程就可以达到高效率的分页效果。

2、使用两种(或者多种)分页算法,来达到效率和通用的完美统一。当然也可以使用不同的算法应对不同的数据库。

3、按需所取。如果一页显示20条记录,那么分页控件只会从数据库里提取20条数据。

4、支持查询条件,您可以很方便的添加查询条件,实现复杂的检索功能。

5、利用ViewState 来保存一些信息,节省服务器的资源。
比如在第一次显示数据的时候会统计总记录数,然后把总记录数保存到ViewState里面,当点击下一页的时候不用重新统计。
还有其他的信息也会保存到 ViewState 里面。

6、在百万级数据下也有很好的表现,下面有测试数据,不信的话,可以下载demo亲自测试。

7、使用方便,只需要设置几个属性就可以,不必处理分页时产生的事件。

8、支持多种显示数据的控件,比如DataGrid、DataList、Reapeter、DropDownList等。只要是能够使用DataTable绑定的控件都支持。

四、缺点
1、多表联合查询的时候需要使用视图。就是要先建立一个视图。
2、第一种分页算法不要求数据表一定要有主键,但是第二种分页算法要求表必须有主键,而且不能使联合主键。
3、不能很灵活的应对多种数据库。
4、内部代码比较混乱,05年底写的,一直想整理,但是都没有开始整理,只是做了小的升级和修改bug。



详细请见:
http://www.cnblogs.com/jyk/archive/2008/04/29/1175808.html


...全文
199 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
自然框架 2008-05-01
  • 打赏
  • 举报
回复
数据库操作类 2005版的好了,但是没有测试过。
gaohaibin1 2008-04-30
  • 打赏
  • 举报
回复
学习了
xiaoyi1234 2008-04-30
  • 打赏
  • 举报
回复
顶了 楼主的数据库操作类 2005版的好了没啊
自然框架 2008-04-30
  • 打赏
  • 举报
回复
谢谢大家的支持
milozy1983 2008-04-29
  • 打赏
  • 举报
回复
自定义分页控件主要是ViewState以及处理好子元素的按钮事件
zhu_gx 2008-04-29
  • 打赏
  • 举报
回复
支持
zhu_gx 2008-04-29
  • 打赏
  • 举报
回复
顶你上去
iuhxq 2008-04-29
  • 打赏
  • 举报
回复
支持原创
brightview 2008-04-29
  • 打赏
  • 举报
回复
支持原创
Deken_Muse 2008-04-29
  • 打赏
  • 举报
回复
学习帮顶
oec2003 2008-04-29
  • 打赏
  • 举报
回复
支持
stone_soup 2008-04-29
  • 打赏
  • 举报
回复
顶.
ljm66 2008-04-29
  • 打赏
  • 举报
回复
支持原创!!!
自然框架 2008-04-29
  • 打赏
  • 举报
回复
居然还是不能修改。
BearRui 2008-04-29
  • 打赏
  • 举报
回复
支持原创!!!
zpcoder 2008-04-29
  • 打赏
  • 举报
回复
快点对,05 及时性 08 进行支持并优化。

这样对空上控件的推广有帮助
自然框架 2008-04-29
  • 打赏
  • 举报
回复
谢谢大家的支持。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧