zl程序教程

您现在的位置是:首页 >  后端

当前栏目

asp.net分页sql语句(结合aspnetpager)

NetASPSQL 语句 分页 结合 AspNetPager
2023-06-13 09:14:08 时间
数据库操作类:
复制代码代码如下:

///<summary>
///取得总数
///</summary>
///<returns></returns>
publicstringgetTotal()
{
StringBuildersb=newStringBuilder();
sb.Append("selectcount(*)totalfromTest");
DataTabledt=DBHelper.ExecuteDt(sb.ToString());
returndt.Rows[0][0].ToString();
}
///<summary>
///根据当前页码,每页条数,取得相应数据。
///</summary>
///<paramname="pageNum">每页显示条数</param>
///<paramname="currentPage">当前页码</param>
///<returns></returns>
publicDataTablegetPagesData(intpageNum,intcurrentPage)
{
StringBuildersb=newStringBuilder();
sb.Append("selecttop"+pageNum+"*fromTestwhere");
sb.Append("IDnotin(selecttop"+pageNum*currentPage+"IDfromTest)");
returnDBHelper.ExecuteDt(sb.ToString());
}

前台:
复制代码代码如下:

<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Default.aspx.cs"Inherits="sqlPager_Default"%>
<%@RegisterAssembly="AspNetPager"Namespace="Wuqi.Webdiyer"TagPrefix="webdiyer"%>

<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<htmlxmlns="http://www.w3.org/1999/xhtml">
<headrunat="server">
<title>不用存储过程的分页</title>
</head>
<body>
<formid="form1"runat="server">
<div>
<asp:gridviewID="gvSql"runat="server">
</asp:gridview>
</div>
<div>
<webdiyer:aspnetpagerID="AspNetPager1"runat="server"OnPageChanged="AspNetPager1_PageChanged"PageSize="3">
</webdiyer:aspnetpager>
</div>
</form>
</body>
</html>

后台:
复制代码代码如下:
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Collections;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;

publicpartialclasssqlPager_Default:System.Web.UI.Page
{
BLL.Testtest=newBLL.Test();
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!IsPostBack)
{
AspNetPager1.RecordCount=Convert.ToInt32(test.getTotal());//此属性保存总记录数..
Bind();
}
}
privatevoidBind()
{
this.gvSql.DataSource=test.getPagesData(Convert.ToInt32(AspNetPager1.PageSize),AspNetPager1.CurrentPageIndex-1);
this.gvSql.DataBind();
}
protectedvoidAspNetPager1_PageChanged(objectsender,EventArgse)
{
Bind();
}
}