« 我的房子MY HOUSE MY GIRL!不用AspNetPager.dll怎么实现翻页?看我的! »

如何使用AspNetPager.dll 做翻页功能

用现成的 AspNetPager.dll 做翻页功能
在.aspx文件中头部加
<%@Register TagPrefix="Webdiyer" Namespace="Wuqi.Webdiyer" Assembly="aspnetpager"%>

页面里除了

要有datalist之类的控件:

******************************************************
     <asp:DataList ID="DataList1" runat="server" HorizontalAlign="Center">
    <ItemTemplate>
<table width="760"  border="0" cellspacing="0" cellpadding="0" style="border-bottom:1px dotted #ccc;"  id="table5" >
              <tr>
                <td height="20" style="width: 572px" align="left">
                ·<font color="blue"><a href="../A/<%# Eval("ID") %>.html" target="_blank"><%#Eval("title")%></a></font>
                </td>
                <td class="index_name1" width="100" align="right" valign="middle"><%# Convert.ToDateTime(DataBinder.Eval

(Container.DataItem, "posttime")).ToShortDateString().ToString().Trim() %></td>
              </tr>
            </table>
    </ItemTemplate>
    </asp:DataList>
******************************************************

还要加上翻页的

******************************************************
<div>
<table border="0" cellpadding="0" style="border-collapse: collapse; background-color: #f5f5f5;" width="760" id="table1"

class="mu6" height="20">
 <tr>
  <td style="height: 25px">
    <Webdiyer:AspNetPager id="pager" runat="server" HorizontalAlign="Right"  FirstPageText="<<"

LastPageText=">>" PrevPageText="<" NextPageText=">" NumericButtonTextFormatString="-{0}-" Width="760px"
   ShowCustomInfoSection="Left" ShowBoxThreshold="2" PageSize="30" OnPageChanged="pager_PageChanged"

InputBoxClass="text2" TextAfterInputBox=""  />
   </td>
 </tr>
</table>
</div>
******************************************************

在.cs文件中要有以下内容:

其中 z_list 是存储过程

 public void FirstBindData()
    {
        cmd = new SqlCommand("z_list", conn);
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.Add("@pageindex", 1);
        cmd.Parameters.Add("@pagesize", 1);
        cmd.Parameters.Add("@docount", true);
        conn.Open();
        pager.RecordCount = (int)cmd.ExecuteScalar();
        conn.Close();
        BindData();
    }

    public void BindData()
    {
        cmd = new SqlCommand();
        cmd.Connection = conn;
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "z_list";
        cmd.Parameters.Add("@pageindex", pager.CurrentPageIndex);
        cmd.Parameters.Add("@pagesize", pager.PageSize);
        cmd.Parameters.Add("@docount", false);
        conn.Open();
        DataList1.DataSource = cmd.ExecuteReader();
        DataList1.DataBind();
        conn.Close();
        AddCustomText();
    }

    public void AddCustomText()
    {
        pager.CustomInfoText = "资讯总数:<font color=\"blue\"><b>" + pager.RecordCount.ToString() + "</b></font>";
        pager.CustomInfoText += " 总页数:<font color=\"blue\"><b>" + pager.PageCount.ToString() + "</b></font>";
        pager.CustomInfoText += " 当前页:<font color=\"red\"><b>" + pager.CurrentPageIndex.ToString() + "</b></font>";

    }

    protected void pager_PageChanged(object src, Wuqi.Webdiyer.PageChangedEventArgs e)
    {
        pager.CurrentPageIndex = e.NewPageIndex;
        BindData();
    }

*********************************************************

存储过程:

CREATE proc z_list
(@pagesize int,
@pageindex int,
@docount bit)
as
set nocount on
if(@docount=1)
select count(ID) from DATATABLE
else
begin
declare @indextable table(table_id int identity(1,1),ID int)
declare @PageLowerBound int
declare @PageUpperBound int
set @PageLowerBound=(@pageindex-1)*@pagesize
set @PageUpperBound=@PageLowerBound+@pagesize
set rowcount @PageUpperBound
insert into @indextable(ID) select ID from DATATABLE order by id desc
select O.* from DATATABLE O,@indextable t where O.ID=t.ID
and t.table_id>@PageLowerBound and t.table_id<=@PageUpperBound order by t.table_id
end
set nocount off
GO


但是这样写的缺点就是无法实现list页面用参数来实现翻页,爬虫就没办法爬到第二页去了。

如果爬到第二页、第三页。我下一篇会给出来答案。

  • 相关文章:
  • quote 1.痴迷者
  • 您好:上面的师父,我用你的代码,结果出错了,怎么回事啊,请您帮帮我啊,我的QQ :395475789
    我会找您的,
    “/meet”应用程序中的服务器错误。
    --------------------------------------------------------------------------------

    编译错误
    说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。

    编译器错误信息: CS0234: 命名空间“Wuqi.Webdiyer”中不存在类型或命名空间名称“PageChangedEventArgs”(是缺少程序集引用吗?)

  • 2007-3-27 0:20:24 回复该留言
  • quote 2.sunson
  • 哦。这个可能是你没有全部把 bin的文件放进去
  • 2007-3-27 17:22:55 回复该留言
  • quote 3.stephen
  • 但是这样写的缺点就是无法实现list页面用参数来实现翻页,爬虫就没办法爬到第二页去了。

    如果爬到第二页、第三页。我下一篇会给出来答案。


    请问,你的下一篇在哪里?找不到解决办法呀,爬虫爬不到我的第二页....
  • 2010-8-12 18:30:44 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By HUANGXINXIN.COM

Copyright 2002-2010. Huangxinxin.COM All Rights Reserved.