【开源】QuickPager ASP.NET2.0分页控件V2.0.0.6 修改了几个小bug,使用演示。

自然框架 2008-07-30 10:47:13
由于项目里面还在使用vs2003,还没有使用新的分页控件,所以对新的分页控件的测试还很不到位,遗留了不少的bug,感谢网友试用提出宝贵意见。由于项目正在收尾中,时间也不是太充裕,所以使用说明也不够详细。这次是发一个新的版本,另外主要是说一下,如何在一个页面(一个项目)里访问多种数据库,对多种数据库里的表进行分页。



我用过的数据库有SQL Server2000、SQL Server2005、Access、Excel,而分页控件也支持这四种数据库,那么就以这四种数据库为例。目的是在一个页面里面对这四种数据库里的表进行分页显示。



如何在项目里添加控件,请看这里:http://www.cnblogs.com/jyk/archive/2008/06/27/1231337.html



目前分页控件里面的分页算法有


// 基于Row_Number的分页算法,只支持SQL Server2005数据库
Row_Number = 1,

// 基于表变量的分页算法,支持SQL Server2000、SQL Server2005数据库
TableVar = 2,

// Max的分页算法。支持SQL Server2000、SQL Server2005数据库
MaxMin = 3,

// 颠倒法,需要设置主键,已经修改了最后一页的bug。支持SQL Server2000、SQL Server2005、Access、Excel
TopTop = 4,

// Max 和 颠倒法自动切换
Max_TopTop = 304,

// Max 和 表变量自动切换
Max_TableVar = 302

数据库就用 northwind 吧,这个大家都有吧。拿一个简单的表Products来分页吧。

1、在页面里拖拽四个GridView控件,和四个分页控件,一一对应,每一组对应一种数据库。



2、由于数据库的类型不一样,所以每一个分页控件都需要不同的数据访问函数库的实例。由于web.confog里面的连接字符串是访问SQL Server2000的,所以SQL Server2000对应的分页控件就不用单独设置了,其他的三个分页控件需要单独设置一下数据访问函数库的实例。(代码在下面一起给出)



3、数据访问函数库的实例设置完毕之后其他的设置就没有特殊的地方了,和访问一种数据库是一样的,只是对于Excel文件来说,表名是工作表 + “$”组成的。比如工作表的名称是“Sheet1”,那么对应的表名是“Sheet1$”。



4、代码:
protected void Page_Load(object sender, EventArgs e)
{
Response.Cache.SetNoStore();

设置SQL 2005的分页控件需要的数据访问函数库的实例#region 设置SQL 2005的分页控件需要的数据访问函数库的实例
//连接字符串
string cnStr = @"Data Source=.\s05;Initial Catalog=northwind ;persist security info=False;user id=sa;pwd=admin;";

//定义数据访问函数库
DataAccessHelp dal_2005 = new DataAccessHelp("1", cnStr);
//交给给分页控件
this.myPager_2005.DAL = dal_2005;
#endregion

设置Access的分页控件需要的数据访问函数库的实例#region 设置Access的分页控件需要的数据访问函数库的实例
//连接字符串
string Path = Server.MapPath("~/dataAccess.mdb");
cnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Path + ";Jet OLEDB:Database Locking Mode=1;";

//定义数据访问函数库
DataAccessHelp dal_Access = new DataAccessHelp("2", cnStr);
//交给给分页控件
myPager_Access.DAL = dal_Access;
#endregion

设置Excel的分页控件需要的数据访问函数库的实例#region 设置Excel的分页控件需要的数据访问函数库的实例
//连接字符串
Path = Server.MapPath("~/dataExcel.xls");
cnStr = "Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source =" + Path + ";Extended Properties=Excel 8.0";//;HDR=YES;

//定义数据访问函数库
DataAccessHelp dal_Excel = new DataAccessHelp("2", cnStr);
//交给给分页控件
this.myPager_Excel.DAL = dal_Excel;
#endregion


if (!Page.IsPostBack)
{
setPageInfo1();
setPageInfo2();
setPageInfo3();
setPageInfo4();
}
}

设置分页控件的属性 sql 2000#region 设置分页控件的属性 sql 2000
private void setPageInfo1()
{
//以下三个属性必须赋值
this.myPager_2000.ControlGridID = this.GV_2000.ID;

this.myPager_2000.TableName = " Products"; //表名或者视图名
this.myPager_2000.TableIDColumns = "ProductID"; //主键
this.myPager_2000.TableShowColumns = "*"; //显示的字段,可以不填,默认为 *
this.myPager_2000.TableOrderColumns = "ProductName,ProductID "; //排序字段,可以写多个字段
this.myPager_2000.TableQuery = ""; //查询条件,不包含 where

this.myPager_2000.PageSize = 3; //一页显示的记录数,默认一页显示20条记录
this.myPager_2000.NaviCount = 8; //页号导航的数量,默认10个


}
#endregion


其他数据库的设置方法也是一样的,省略了。下面的网址有完全的代码。



5、分页控件的源码和demo的下载网址:http://www.cnblogs.com/jyk/archive/2008/07/29/1255891.html



...全文
84 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
自然框架 2008-07-31
  • 打赏
  • 举报
回复
托管代码 是什么东东?
iuhxq 2008-07-30
  • 打赏
  • 举报
回复
接分

邀请你到http://www.svnhost.cn托管代码
wxg22526451 2008-07-30
  • 打赏
  • 举报
回复
up

62,041

社区成员

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

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

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

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