asp.net翻页代码上下页不管用,,急

这是更多后台代码usingBLL;publicpartialclassgengduo:System.Web.UI.Page{protectedvoidPage_Load(... 这是更多后台代码
using BLL;
public partial class gengduo : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ }

public void bd()
{
DAL.DataBase d = new DAL.DataBase();
DataSet ds = new DataSet();
d.runSQL("select * from news where newsID=" + Request["id"].ToString() + "order by newsID DESC", ref ds);

PagedDataSource p = new PagedDataSource();
p.DataSource = ds.Tables[0].DefaultView;
p.AllowPaging = true;
p.PageSize = 3;

int cp = 0;
if (Request["page"] != null)
{
cp = Convert.ToInt32(Request["page"]);

}
p.CurrentPageIndex = cp;
if (!p.IsFirstPage)
{
HyperLink1.NavigateUrl = "?id=" + Request["id"].ToString() + "&page=" + (cp - 1);

}
if (!p.IsLastPage)
{
HyperLink2.NavigateUrl = "?id=" + Request["id"].ToString() + "&page=" + (cp + 1);
}
HyperLink3.NavigateUrl = "?id=" + Request["id"].ToString() + "&page=" + 0;
HyperLink4.NavigateUrl = "?id=" + Request["id"].ToString() + "&page=" + (p.PageCount - 1);
showPage.Text = "第" + (p.CurrentPageIndex + 1) + "页共" + p.PageCount + "页";
DataList1.DataSource = p;
DataList1.DataBind();
d.close();

}
}

这是更多页面
<asp:DataList ID="DataList1" runat="server" DataSourceID="SqlDataSource1" >

<HeaderTemplate><ul></HeaderTemplate>
<ItemTemplate>
<li>
<asp:HyperLink ID="HyperLi" runat="server" Target="_blank" NavigateUrl='<%#Eval("newsID","shouNews.aspx?id={0}") %>' Text='<%#Eval("newsTitle").ToString().Length >17?Eval("newsTitle").ToString().Substring(0,15)+"...":Eval("newsTitle").ToString() %>'></asp:HyperLink>
<asp:Literal ID="Literal1" runat="server" Text='<%#"<i>"+Convert.ToDateTime(Eval("newsDate")).ToString("yyyy-MM-dd") +"</i>" %>'></asp:Literal>
</li>
</ItemTemplate>
<FooterTemplate></ul></FooterTemplate>
</asp:DataList>
<asp:Literal ID="showPage" runat="server"></asp:Literal>
<asp:HyperLink ID="HyperLink1" runat="server">上一页</asp:HyperLink>
<asp:HyperLink ID="HyperLink2" runat="server">下一页</asp:HyperLink>
<asp:HyperLink ID="HyperLink3" runat="server">首页</asp:HyperLink>
<asp:HyperLink ID="HyperLink4" runat="server">尾页</asp:HyperLink>
展开
 我来答
松果杂谈
2012-09-10 · 用心创作内容,感谢您的关注。
松果杂谈
采纳数:14 获赞数:71

向TA提问 私信TA
展开全部
方法可以用,我经常这么用,但数据库查询语句有问题,给你个参考

if (nowpage == 1)
{
str = "select top " + size + " * from com_people order by id desc ";
}
else
{
int temp1 ;
temp1 = size * (nowpage - 1);
str = "select top " + size + " * from com_people where id<(SELECT Min(id) FROM (SELECT TOP " + temp1 + " id FROM com_people ORDER BY id desc) AS T) order by id desc";
}
DataSet ds = da.GetDataSet(str);
文走520
2012-08-28 · TA获得超过525个赞
知道小有建树答主
回答量:267
采纳率:50%
帮助的人:172万
展开全部
我比较懒,都是直接用自带的分页功能,定义了 PageIndexChanging 就搞定了,自定义的一直想搞,一直懒得搞。。。

占个前排坐等答案
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
苹果牛奶巧克力雪糕冰淇淋
2012-08-28 · TA获得超过254个赞
知道小有建树答主
回答量:519
采纳率:100%
帮助的人:241万
展开全部
翻页我觉得用存储过程写比较好
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
英卫教育老师
2012-08-29 · TA获得超过107个赞
知道答主
回答量:156
采纳率:100%
帮助的人:90.4万
展开全部
最好别用PagedDataSource ,数据量大的时候就很慢了
不是有那个aspnetpage分页控件吗,好用都不要啊
追问
分页控件,效果不好,我是vs2008 c# ,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
王孙风雨之J
2012-08-30 · TA获得超过922个赞
知道小有建树答主
回答量:422
采纳率:0%
帮助的人:343万
展开全部
可以用 AspNetPager 这个我在用比较不错 各种设置和各种简单 不过需要写存储过程的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式