AspNetPager分页控件的使用
来源:互联网 发布:公司域名怎么申请 编辑:程序博客网 时间:2024/04/30 10:07
创建存储过程 UP_GetRecordByPageOrder
USE [数据库名字]GO/****** 对象: StoredProcedure [dbo].[UP_GetRecordByPageOrder] 脚本日期: 05/20/2014 16:21:47 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE PROCEDURE [dbo].[UP_GetRecordByPageOrder] @tblName varchar(255), -- 表名 @fldName varchar(255), -- 显示字段名 @OrderfldName varchar(255), -- 排序字段名 @StatfldName varchar(255), -- 统计字段名 @PageSize int = 10, -- 页尺寸 @PageIndex int = 1, -- 页码 @IsReCount bit = 0, -- 返回记录总数, 非 0 值则返回 @OrderType bit = 0, -- 设置排序类型, 非 0 值则降序 @strWhere varchar(1000) = '' -- 查询条件 (注意: 不要加 where) AS declare @strSQL varchar(6000) -- 主语句 declare @strTmp varchar(100) -- 临时变量 declare @strOrder varchar(400) -- 排序类型 if @OrderType != 0 begin set @strTmp = '<(select min' set @strOrder = ' order by [' + @OrderfldName +'] desc' end else begin set @strTmp = '>(select max' set @strOrder = ' order by [' + @OrderfldName +'] asc' end set @strSQL = 'select top ' + str(@PageSize) + ' ' + @fldName + ' from [' + @tblName + '] where [' + @OrderfldName + ']' + @strTmp + '([' + @OrderfldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' [' + @OrderfldName + '] from [' + @tblName + ']' + @strOrder + ') as tblTmp)' + @strOrder if @strWhere != '' set @strSQL = 'select top ' + str(@PageSize) + ' ' + @fldName + ' from [' + @tblName + '] where [' + @OrderfldName + ']' + @strTmp + '([' + @OrderfldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' [' + @OrderfldName + '] from [' + @tblName + '] where ' + @strWhere + ' ' + @strOrder + ') as tblTmp) and ' + @strWhere + ' ' + @strOrder if @PageIndex = 1 begin set @strTmp = '' if @strWhere != '' set @strTmp = ' where ' + @strWhere set @strSQL = 'select top ' + str(@PageSize) + ' ' + @fldName + ' from [' + @tblName + ']' + @strTmp + ' ' + @strOrder end if @IsReCount != 0 set @strSQL = @strSQL+' select count(1) as Total from [' + @tblName + ']'if @strWhere!='' set @strSQL = @strSQL+' where ' + @strWhereexec (@strSQL)
DAL 参数参考上面的存储过程
/// <summary> /// 分页 /// </summary> /// <param name="PageSize"></param> /// <param name="PageIndex"></param> /// <param name="strWhere"></param> /// <returns></returns> public DataSet GetList(int PageSize, int PageIndex, string strWhere) { SqlParameter[] parameters = { new SqlParameter("@tblName", SqlDbType.VarChar, 255), new SqlParameter("@fldName", SqlDbType.VarChar, 255), new SqlParameter("@OrderfldName", SqlDbType.VarChar, 255), new SqlParameter("@StatfldName", SqlDbType.VarChar, 255), new SqlParameter("@PageSize", SqlDbType.Int), new SqlParameter("@PageIndex", SqlDbType.Int), new SqlParameter("@IsReCount", SqlDbType.Bit), new SqlParameter("@OrderType", SqlDbType.Bit), new SqlParameter("@strWhere", SqlDbType.VarChar,1000), }; parameters[0].Value = "数据表名字"; parameters[1].Value = "*"; parameters[2].Value = "用于排序的字段名字"; parameters[3].Value = ""; parameters[4].Value = PageSize; parameters[5].Value = PageIndex; parameters[6].Value = 1; parameters[7].Value = 0; parameters[8].Value = strWhere; return DbHelperSQL.RunProcedure("UP_GetRecordByPageOrder", parameters, "ds"); }
BLL
/// <summary> /// 分页 /// </summary> /// <param name="PageSize"></param> /// <param name="PageIndex"></param> /// <param name="strWhere"></param> /// <returns></returns> public DataSet GetList(int PageSize, int PageIndex, string strWhere) { return dal.GetList(PageSize, PageIndex, strWhere); }
CS 调用演示
Pz.BLL.Demo pbd = new Pz.BLL.Demo(); string strSql = string.Empty; DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { strSql = 这里只要select语句 where 后的条件部分; ds = pbd.GetList(AspNetPager1.PageSize, AspNetPager1.CurrentPageIndex, strSql); AspNetPager1.RecordCount = (int)ds.Tables[1].Rows[0][0]; bind(); } protected void bind() { ds = pbd.GetList(AspNetPager1.PageSize, AspNetPager1.CurrentPageIndex, strSql); Repeater1.DataSource = ds.Tables[0]; Repeater1.DataBind(); } protected void AspNetPager1_PageChanged(object sender, EventArgs e) { bind(); }
ASPX 演示
<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>
<webdiyer:AspNetPager ID="AspNetPager1" runat="server" PageSize="30" HorizontalAlign="Center" Width="100%" PageIndexBoxType="DropDownList" OnPageChanged="AspNetPager1_PageChanged" NumericButtonTextFormatString="<{0}>"> </webdiyer:AspNetPager>
0 0
- AspNetPager分页控件的使用
- AspNetPager分页控件的使用
- AspnetPager分页控件的使用
- AspNetPager分页控件的使用
- AspNetPager分页控件的使用
- AspNetPager分页控件的使用
- AspNetPager分页控件的使用
- AspNetPager分页控件的使用
- AspNetPager分页控件的使用
- AspNetPager分页控件的使用
- AspNetPager分页控件的使用
- 分页控件 AspNetPager 的使用
- AspNetPager分页控件的使用
- AspNetPager分页控件使用
- 使用AspNetPager控件分页
- 使用AspNetPager控件分页
- AspNetPager分页控件的使用(代码生成器)
- asp.net 分页控件AspNetPager的使用
- 关于点击状态栏回到顶部的功能失效
- 域名被恶意解析如何处理?
- hdu4504威威猫系列故事——篮球梦
- oracle日期比较
- union中隐藏的字节对齐
- AspNetPager分页控件的使用
- Java关键字final、static使用总结
- 图像处理之——浮雕效果实现
- IOS NSNotificationCenter消息通信机制介绍
- Android中LayoutInflater的3种使用以及getSystemService的API
- java中equals的用法,与“==”的区别
- 关于正则表达式中的元字符的过滤
- BlockManager
- 【div+css网页布局详解】