aspnetpager分页,不使用存储过程
2024-10-18 22:34:52
一、前台显示界面代码Default.aspx(注意,代码运行环境是VS.2005)
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="Default4" %>
<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>用AspNetPager.dll控件的分页方法操作方法</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table border=1>
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<tr>
<td><%#DataBinder.eval_r(Container.DataItem,"osid")%></td>
<td><%#DataBinder.eval_r(Container.DataItem,"year1")%></td>
<td><%#DataBinder.eval_r(Container.DataItem,"month1")%></td>
<td><%#DataBinder.eval_r(Container.DataItem,"output1")%></td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
<webdiyer:AspNetPager ID="AspNetPager1" runat="server" Width="100%" NumericButtonCount="6" UrlPaging="true"NumericButtonTextFormatString="[{0}]" CustomInfoHTML="第 <font color='red'><b>%CurrentPageIndex%</b></font> 页 共 %PageCount% 页 显示 %StartRecordIndex%-%EndRecordIndex% 条" ShowCustomInfoSection="left"
FirstPageText="首页" LastPageText="末页" NextPageText="下页" PrevPageText="上页" Font-Names="Arial"BackColor="#F8B500" AlwaysShow="true" ShowInputBox="Always" SubmitButtonText="跳转"SubmitButtonStyle="botton" OnPageChanged="AspNetPager1_PageChanged" >
</webdiyer:AspNetPager>
<%--<webdiyer:AspNetPager ID="AspNetPager1" runat="server" PageSize="15" style="font-size:14px;" HorizontalAlign="Right" NumericButtonCount="6" NumericButtonTextFormatString="[{0}]" CustomInfoHTML="第 <font color='red'><b>%CurrentPageIndex%</b></font> 页 共 %PageCount% 页 显示 %StartRecordIndex%-%EndRecordIndex% 条" InputBoxStyle="width:24px; height:14px;" ShowInputBox="Always" SubmitButtonText=" GO " FirstPageText="[首 页]" PrevPageText="[上 页]" NextPageText="[下 页]" LastPageText="[末 页]" TextBeforeInputBox="转到第" TextAfterInputBox="页 " PagingButtonSpacing="10px" width="100%" ShowCustomInfoSection="Left" UrlPaging="true"></webdiyer:AspNetPager>
--%>
</div>
</form>
</body>
</html>
二、Default.aspx.cs页面的代码
DBAccess db = new DBAccess();
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{ BindGrid(); }
}
protected void AspNetPager1_PageChanged(object sender, EventArgs e)
{ BindGrid();
}
public void BindGrid()
{
this.AspNetPager1.RecordCount = Int32.Parse(db.GetAllCount().ToString());
int pageIndex = this.AspNetPager1.CurrentPageIndex - 1;
int pageSize = this.AspNetPager1.PageSize = 20;
Repeater1.DataSource = db.GetCurrentPage(pageIndex, pageSize);
Repeater1.DataBind();
}
三、DBAccess.cs页面的代码
using System.Data.SqlClient;
public class DBAccess
{
private SqlConnection con;
private string DBName = "tongjinet";
//创建连接对象并打开
public void Open()
{
if (con == null)
con = new SqlConnection("server=(local);uid=sa;pwd=sql;database=" + DBName);
if (con.State == ConnectionState.Closed)
con.Open();
}
//创建一个命令对象并返回该对象
public SqlCommand CreateCommand(string sqlStr)
{
Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = sqlStr;
cmd.Connection = con;
return cmd;
}
//生成一个对象并返回该结果集第一行第一列
public object GetScalar(string sqlStr)
{
SqlCommand cmd = CreateCommand(sqlStr);
object obj = cmd.ExecuteScalar();
//CommadnBehavior.CloseConnection是将于DataReader的数据库链接关联起来
//当关闭DataReader对象时候也自动关闭链接
return obj;
}
//执行数据库查询并返回一个数据集 [当前页码,每页记录条数]
public DataSet GetCurrentPage(int pageIndex, int pageSize)
{
//设置导入的起始地址
int firstPage = pageIndex * pageSize;
string sqlStr = "select * from outputsell order by osid desc";
SqlCommand cmd = CreateCommand(sqlStr);
DataSet dataset = new DataSet();
SqlDataAdapter dataAdapter = new SqlDataAdapter(cmd);
dataAdapter.Fill(dataset, firstPage, pageSize, "outputsell");
cmd.Dispose();
Close();
dataAdapter.Dispose();
return dataset;
}
//获得查询数据的总条数
public object GetAllCount()
{
string sqlStr = "select count(*) from outputsell";
object obj = GetScalar(sqlStr);
return obj;
}
//关闭数据库
public void Close()
{
if (con != null)
{
con.Close();
}
}
//释放资源
public void Dispose()
{
if (con != null)
{
con.Dispose();
con = null;
}
}
}
最新文章
- 1472. Martian Army
- Android --差缺补漏之 Intent&;putExtra()
- D_S 顺序栈的基本操作
- Android ListVIew 详解(一)
- Could not locate device support files.《This iPhone 5 (Model A1429) is running iOS 7.0.4 (11B554a), which may not be supported by this version of Xcode.》-b
- 微软Hololens学院教程- Holograms 100: Getting Started with Unity【微软教程已经更新,本文是老版本】
- SRM 609(1-250pt, 1-500pt)
- Linux学习笔记14——使用fcntl实现文件锁定
- .NET 各种问题汇总
- 2013年全球IT公司市值排行榜
- 开源的许可证GPL、LGPL、BSD、Apache 2.0的通俗解释
- (转)什么是P问题、NP问题和NPC问题
- hdoj 1251 字典树||map
- webService接口交互
- Storyboard的几点缺憾
- WordCloud词云包的安装
- LoadRunner-关联相关(解决方法二)
- NSUserDefaults 简介,使用 NSUserDefaults 存储自定义对象 - lady-奕奕的个人空间 - 开源中国社区
- 9.26 开课第二十三天 (JS表单验证)
- js中fn()和return fn()的区别
热门文章
- 几个因为hadoop配置文件不当造成的错误
- 清理SQL数据库日志
- 疯狂Android第一章:Android环境配置以及基本概念
- dojo.byId、dojo.query、dojo.attr
- Dijkstra算法(迪杰斯塔拉算法)
- ORACLE PL/SQL开发--bulk collect的用法 .
- Dragon Balls--hdu3635(并查集)
- ActiveX异步回调JavaScript
- uva10820 send a table (nlogn求1-n欧拉函数值模版
- linux之SQL语句简明教程---INSERT INTO