zoukankan      html  css  js  c++  java
  • asp.net结合aspnetpager用sql语句分页

    数据库操作类:
    复制代码 代码如下:
    /// <summary> 
    /// 取得总数 
    /// </summary> 
    /// <returns></returns> 
    public string getTotal() 
    { 
    StringBuilder sb = new StringBuilder(); 
    sb.Append("select count(*) total from Test"); 
    DataTable dt = DBHelper.ExecuteDt(sb.ToString()); 
    return dt.Rows[0][0].ToString(); 
    } 
    /// <summary> 
    /// 根据当前页码,每页条数,取得相应数据。 
    /// </summary> 
    /// <param name="pageNum">每页显示条数</param> 
    /// <param name="currentPage">当前页码</param> 
    /// <returns></returns> 
    public DataTable getPagesData(int pageNum, int currentPage) 
    { 
    StringBuilder sb = new StringBuilder(); 
    sb.Append("select top " + pageNum + " * from Test where "); 
    sb.Append("ID not in (select top " + pageNum * currentPage + " ID from Test)"); 
    return DBHelper.ExecuteDt(sb.ToString()); 
    }
    
    前台:
    复制代码 代码如下:
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="sqlPager_Default" %> 
    <%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml" > 
    <head runat="server"> 
    <title>不用存储过程的分页</title> 
    </head> 
    <body> 
    <form id="form1" runat="server"> 
    <div> 
    <asp:gridview ID="gvSql" runat="server"> 
    </asp:gridview> 
    </div> 
    <div> 
    <webdiyer:aspnetpager ID="AspNetPager1" runat="server" OnPageChanged="AspNetPager1_PageChanged" PageSize="3"> 
    </webdiyer:aspnetpager> 
    </div> 
    </form> 
    </body> 
    </html>
    
    后台:
    复制代码 代码如下:
    using System; 
    using System.Data; 
    using System.Configuration; 
    using System.Collections; 
    using System.Web; 
    using System.Web.Security; 
    using System.Web.UI; 
    using System.Web.UI.WebControls; 
    using System.Web.UI.WebControls.WebParts; 
    using System.Web.UI.HtmlControls; 
    public partial class sqlPager_Default : System.Web.UI.Page 
    { 
    BLL.Test test = new BLL.Test(); 
    protected void Page_Load(object sender, EventArgs e) 
    { 
    if (!IsPostBack) 
    { 
    AspNetPager1.RecordCount = Convert.ToInt32(test.getTotal());//此属性保存总记录数.. 
    Bind(); 
    } 
    } 
    private void Bind() 
    { 
    this.gvSql.DataSource = test.getPagesData(Convert.ToInt32(AspNetPager1.PageSize), AspNetPager1.CurrentPageIndex - 1); 
    this.gvSql.DataBind(); 
    } 
    protected void AspNetPager1_PageChanged(object sender, EventArgs e) 
    { 
    Bind(); 
    } 
    }
    
    
  • 相关阅读:
    Visual Studio自带的的Developer Command Prompt对话框
    利用VS(Visual Studio)自带的工具查看DLL文件的信息
    谷歌面试官反馈级别
    Inno Setup中多语言时,使用占位符填充
    SQL*Plus命令
    Oracle 所有字典
    彻底完全卸载 SQL Server 2005 的图文教程
    win7(windows 7)系统下安装SQL2005(SQL Server 2005)图文教程
    创建表空间、新增用户、给用户赋予DBA权限 、删除用户下的上有数据表
    ORA-01012: not logged on
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/1724032.html
Copyright © 2011-2022 走看看