分页逻辑 int pageIndex = 1;//当前页码 int id = Convert.ToInt32(Request.QueryString["id"]); //专题ID int totalCount = new articleOP().getArticleCountByClass(id); //专题内的文章数量 int totlePage = totalCount / 1; //总页数 if (totlePage == 0) { totlePage = 1; } if (Request.QueryString["page"] != null) { pageIndex = Convert.ToInt32(Request.QueryString["page"]); } this.dlArticleLList.DataSource = new articleOP().getArticleByClass(id, pageIndex); this.dlArticleLList.DataBind(); this.lblCurrentPage.Text = pageIndex.ToString(); this.lblTotalPage.Text = totlePage.ToString(); this.lblTotalCount.Text = totalCount.ToString(); if ((pageIndex - 1) * 1 + this.dlArticleLList.Items.Count < totalCount) //如果当前页的记录数加上前面所有页的记录数>总记录数,则禁用“下一页” { this.hpNext.Enabled = true; } else { this.hpNext.Enabled = false; } if (pageIndex <= 1) //如果是第一页 ,则禁用首页及上一页 { this.hpFirstPage.Enabled = false; this.hpPre.Enabled = false; this.hpNext.NavigateUrl = "~/article/class.aspx?id=" + id + "&page=" + (pageIndex + 1); } else { this.hpFirstPage.Enabled = true; this.hpPre.Enabled = true; this.hpFirstPage.NavigateUrl = "~/article/class.aspx?id=" + id + "&page=1"; //首页page = 1 this.hpPre.NavigateUrl = "~/article/class.aspx?id=" + id + "&page=" + (pageIndex - 1); //上一页 this.hpNext.NavigateUrl = "~/article/class.aspx?id=" + id + "&page=" + (pageIndex + 1);//下一页 this.hpLast.NavigateUrl = "~/article/class.aspx?id=" + id + "&page=" + totlePage; //最后一页 }