打算写个新闻系统!以下是所用到的分页代码!
版权声明:原创作品,如需转载,请与作者联系。否则将追究法律责任。 |
//统计当前分类记录数 Conn.Open(); if (Request.QueryString["XClass"] != null) { XID = int.Parse(Request.QueryString["XClass"]); strSQL = "SELECT COUNT(*) FROM Question WHERE Xclass = @XID"; Cmd = new OleDbCommand(strSQL, Conn); Cmd.Parameters.Add(new OleDbParameter("@XID", OleDbType.Integer)).Value = XID; } else { strSQL = "SELECT COUNT(*) FROM Question WHERE Dclass = @DID"; Cmd = new OleDbCommand(strSQL, Conn); Cmd.Parameters.Add(new OleDbParameter("@DID", OleDbType.Integer)).Value = DID; }![]() intTotalRecord = (int)Cmd.ExecuteScalar();![]() intTotalPage = intTotalRecord % intPageSize == 0 ? (int)(intTotalRecord / intPageSize) : (int)(intTotalRecord / intPageSize) + 1; ![]() if (Request.QueryString["p"] != null && Request.QueryString["p"] != "") intCurrentPage = int.Parse(Request.QueryString["p"]);![]() if (intCurrentPage > intTotalPage) intCurrentPage = intTotalPage; if (intCurrentPage - 1 <= 0) { intStartRecord = 0; } else { intStartRecord = intPageSize * (intCurrentPage - 1); } //绑定分类记录![]() if (Request.QueryString["XClass"] != null) { XID = int.Parse(Request.QueryString["XClass"]); strSQL = "SELECT * FROM Question WHERE XClass = @XID"; Cmd = new OleDbCommand(strSQL, Conn); Cmd.Parameters.Add(new OleDbParameter("@XID", OleDbType.Integer)).Value = XID; } else { strSQL = "SELECT * FROM Question WHERE Dclass = @DID"; Cmd = new OleDbCommand(strSQL, Conn); Cmd.Parameters.Add(new OleDbParameter("@DID", OleDbType.Integer)).Value = DID; }![]() ![]() Adpt = new OleDbDataAdapter(Cmd); Adpt.Fill(Ds,intStartRecord, intPageSize,"Topic"); Topic.DataSource = Ds.Tables["Topic"].DefaultView; //Topic.DataBind(); //开始分页算法 StringBuilder strLink = new StringBuilder("?"); if (Request.QueryString["DClass"] != null && Request.QueryString["DClass"] != "") strLink.AppendFormat("DClass={0}", Request.QueryString["DClass"]); if (Request.QueryString["XClass"] != null && Request.QueryString["XClass"] != "") strLink.AppendFormat("&XClass={0}", Request.QueryString["XClass"]); if (intCurrentPage>1) intRow=intCurrentPage*intPageSize-(intPageSize-1); else intRow=1; if (intCurrentPage <= 3) { for (int i = 1; i <= 5; i ++) { if (i <= intTotalPage) { StringBuilder strFormat = new StringBuilder(" <a href=\""); strFormat.Append(strLink); strFormat.Append("&p={0}\">[{0}]</a>"); if (i == intCurrentPage) strFormat = new StringBuilder(" <font color=\"#FF0000\">[{0}]</font>"); strPages.AppendFormat(strFormat.ToString(), i); } else { break; } } if (intTotalPage > 3) strPages.AppendFormat(" <a href=\"{0}&p={1}\">[{1}]</a>", strLink.ToString(), intTotalPage); } else if (intCurrentPage < intTotalPage - 2) { strPages.AppendFormat(" <a href=\"{0}&p=1\">[1]</a> ", strLink.ToString()); for (int i = intCurrentPage - 2; i <= intCurrentPage + 2; i ++) { if (i < intTotalPage) { StringBuilder strFormat = new StringBuilder(" <a href=\""); strFormat.Append(strLink); strFormat.Append("&p={0}\">[{0}]</a>"); if (i == intCurrentPage) strFormat = new StringBuilder(" <font color=\"#FF0000\">[{0}]</font>"); strPages.AppendFormat(strFormat.ToString(), i); } else { break; } } strPages.AppendFormat(" <a href=\"{0}&p={1}\">[{1}]</a>", strLink.ToString(), intTotalPage); } else { strPages.AppendFormat(" <a href=\"{0}&p=1\">[1]</a> ", strLink.ToString()); for (int i = intTotalPage - 3; i <= intTotalPage; i ++) { StringBuilder strFormat = new StringBuilder(" <a href=\""); strFormat.Append(strLink); strFormat.Append("&p={0}\">[{0}]</a>"); if (i == intCurrentPage) strFormat = new StringBuilder(" <font color=\"#FF0000\">[{0}]</font>"); strPages.AppendFormat(strFormat.ToString(), i); } } //分页算法结束 DataBind(); Dispose(); Cmd.Dispose(); Conn.Close(); Conn.Dispose();本文出自 “共享经验” 博客,转载请与作者联系! 本文出自 51CTO.COM技术博客 |





XID
}
}
剑了
博客统计信息
热门文章
最新评论
友情链接