当前位置:七道奇文章资讯网站建设网站编程
日期:2010-10-28 10:48:00  来源:本站整理

AspNetPager控件最具体的分页实现办法[网站编程]

赞助商链接



  本文“AspNetPager控件最具体的分页实现办法[网站编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

  庆贺一下~好不简单把分页做出来了.之前都是用GridView自带的分页,版式丢脸不说,还极不优化,一次取出全部记录,然后举行假分页.

  目前用aspNetPager控件做出的真分页,就好多了,不过还有改良的地方,SQL语句假如换成存储历程效率会更高.

  首先在SqlHelper.cs(DAL层中的数据库助手类,用于写可以复用的基本增删查改办法)中加上以下代码:

  Code

  /**//// <summary>

  /// 获得分页数据

  /// </summary>

  /// <param name="sql">sql语句</param>

  /// <param name="currentPage">当前页</param>

  /// <param name="pagesize">每页显示数</param>

  /// <param name="recordcount"></param>

  /// <returns></returns>

  public static DataSet GetPage(string sql, int currentPage, int pagesize, out int recordcount)

  {

  openCon();

  sqlDs.Clear();

  sqlDa = new SqlDataAdapter(sql, sqlConn);

  int startRow = (currentPage - 1) * pagesize;

  sqlDa.Fill(sqlDs, startRow, pagesize, "table");

  recordcount = GetPageRecord(sql);

  closeCon();

  return sqlDs;

  }

  //返回总的记录数

  public static int GetPageRecord(string sql)

  {

  openCon();

  sql = Regex.Replace(sql, "order by.*", "");

  sql = "select count(*) from (" + sql + ") as temp";

  sqlCmd = new SqlCommand(sql, sqlConn);

  int recordcount = int.Parse(sqlCmd.ExecuteScalar().ToString());

  closeCon();

  return recordcount;

  }

  然后在BLL层新建一个PageManager.cs的分页操作类,封装一下DAL层办法:

  Code

  /**//// <summary>

  /// 获得分页数据

  /// </summary>

  /// <param name="sql">sql语句</param>

  /// <param name="currentPage">当前页</param>

  /// <param name="pagesize">每页显示数</param>

  /// <param name="recordcount"></param>

  /// <returns></returns>

  public static DataSet GetPage(string sql, int currentPage, int pagesize, out int recordcount)

  {

  return SQLHelper.GetPage(sql, currentPage, pagesize, out recordcount);

  }

  asp.net需分页的数据绑定处是这样的:

  Code

  <asp:Repeater ID="repNewsList" runat="server">

  <ItemTemplate>

  <tr>

  <td align="center"><a href="list.aspx?caid=<%# Eval("caId") %>"><%# Eval("name") %></a></td>

  <td align="center"><%# Eval("createTime") %></td>

  </tr>

  </ItemTemplate>

  </asp:Repeater>


  以上是“AspNetPager控件最具体的分页实现办法[网站编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • AspNetPager控件最具体的分页实现办法
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .