当前位置导航:炫浪网>>网络学院>>网页制作>>ASP.NET教程

myPage分页控件 v2.0.0.2版本

欢迎进入.NET社区论坛,与200万技术人员互动交流 >>进入

        v2.0.0.1 的功能。

        1、连接数据库。

        连接数据库是通过数据访问函数库来实现的,连接哪种数据库和连接字符串是在web.config里面设置的。

        ConnStr 这个是连接字符串,没有什么大问题。

        DataType 数数据库类型,这个就没有说清楚。

        DataType = “1”:使用 System.Data.SqlClient 连接 SQL Server 数据库 ,包括 SQL2000 和 SQL2005。

        DataType = “2”:使用System.Data.OleDb连接。可以连接Access、Excel等。

        DataType = “3”:使用System.Data.Odbc连接。可以连接Access等。

        由于没有用过其他的数据库,所以暂时只能使用这三种方式。

        2、分页算法。

        一开始是这么想的,我觉得使用了Vs2005的,一般都会把数据库也升级到SQL2005,所以V2.0.0.1只加上了Row_Number的分页算法,也就是说这种分页算法支持SQL2005,如果您使用 SQL2000的话,那么只能看到第一页,看其他页的时候就会出错。看来不能靠感觉,感觉往往是不可靠的。这一点也给一些朋友带来了麻烦,再次道歉。

        3、版本号。

        2.0.0.1:前面的 2.0表示基于.net Framework2.0,后面的0.1是分页控件自己的版本号。

        v2.0.0.2增加的功能

        1、分页算法

        由于时间有限,先增加一个分页算法,使用表变量的方式来分页,这样可以支持SQL2000了。以前也没有使用过表变量的分页方式,是根据吴旗娃的分页控件的网站里提供的存储过程的代码作为参考,修改了一下。

        发现了一个小问题,好像这种方式,要求表必须有一个主键,而且不能是符合主键,而且主键必须是 int类型的。可能是我对表变量的分页算法还不是很了解,也许没有这些要求?

        使用这种分页算法的话必须设置TableIDColumns属性,也就是表的主键。

        目前我是用的表变量的分页算法:          set nocount on
        declare @tt table(id int identity(1,1),nid int)
        insert into @tt(nid)
        select top 30 ProductID from Products  --where SupplierID =1
        order by ProductName asc
        select * from Products O,@tt t where O.ProductID=t.nid
        and t.id between 20 +1 and 30 order by t.id
        set nocount off

        以上算法根据吴旗娃的分页控件的网站提供的存储过程改动而成。

        由于不用使用存储过程,好像代码简单了一点。

        2、增加了一个属性:SQLKind

        使用这个属性来设置分页控件使用的分页算法,目前只有两种:Row_Number和TableVar(表变量)。请在控件的属性里赋值,如果您没有赋值的话,将采用TableVar(表变量)的方式来分页。
    



        以后还会增加新的分页算法,比如Max、颠倒Top等。这样可以根据不同的情况采用不同的分页算法,以达到最好的效果。

        在下一个版本里面还会增加一个事件,这样就可以向吴旗娃的分页控件的方式来分页了,这样就更灵活。

        这次就不发源码了,下一个版本的时候一起发。

        其他的使用方法和以前是一样的。

相关内容
赞助商链接