使用MySql加上AspNetPager控件进行分页(百万级以下数据)。相当简单。使用MySql的limit来查找数据。真所谓珠联璧合. 上个图先: 主要代码: 前台: <div id="list"> <asp:DataList ID="DLIdeas" Width="100%" runat="server" > <HeaderStyle/> <HeaderTemplate> <th class="Header" width="40">编号</th> <th class="Header" width="80">真实姓名</th> <th class="Header">反馈信息</th> <th class="Header" width="130px">登陆时间</th> <th class="Header_LR" width="40">报告</th> </HeaderTemplate> <ItemTemplate> <th width="40px"><%#DataBinder.Eval(Container.DataItem, "ID")%></th> <th width="80px"><%#DataBinder.Eval(Container.DataItem, "RealName")%></th> <th style="overflow:hidden;" mce_style="overflow:hidden;" ><%# Eval("IContent").ToString()%></th> <th width="130px"><%#DataBinder.Eval(Container.DataItem, "JoinTime")%></th> <th width="40px"><img src="../images/ico/ico_16_1088.gif" mce_src="images/ico/ico_16_1088.gif" alt=""/></th> </ItemTemplate> <ItemStyle Height="26px" /> </asp:DataList> <div id="pages"> <div id="pagesInfo"> <asp:Label ID="lblPage" runat="server" Text=""></asp:Label></div> <div id="pagesButtons"> <webdiyer:AspNetPager ID="AspNetPager1" runat="server" PageSize="14" onpagechanged="AspNetPager1_PageChanged" width="100%" CssClass="anpager" FirstPageText="<img src="../images/ico/page_fl1.gif" mce_src="images/ico/page_fl1.gif"/>" PrevPageText="<img src="../images/ico/page_l1.gif" mce_src="images/ico/page_l1.gif"/>" NextPageText="<img src="../images/ico/page_r1.gif" mce_src="images/ico/page_r1.gif"/>" LastPageText="<img src="../images/ico/page_fr1.gif" mce_src="images/ico/page_fr1.gif"/>" CurrentPageButtonClass="cpb" > </webdiyer:AspNetPager> </div> </div> </div> 后台: protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string sql = ""; sql = "SELECT count(id) FROM ideas "; int totalOrders = Convert.ToInt32(sssDB.GetSingleValue(sql)); AspNetPager1.RecordCount = totalOrders; bindDL(); } } private void bindDL() { string sql = ""; int pageSize = AspNetPager1.PageSize; sql = "SELECT u.ID,u.JoinTime,u.RealName,i.ID,i.IContent from users as u inner join ideas as i where u.ID=i.UID order by u.ID desc limit " + AspNetPager1.StartRecordIndex + "," + pageSize + ""; DataTable dt = sssDB.GetDataTable(sql); DLIdeas.DataSource = dt; DLIdeas.DataBind(); lblPage.Text = AspNetPager1.CurrentPageIndex.ToString() + "/" + AspNetPager1.PageCount.ToString() + "页 " + AspNetPager1.StartRecordIndex.ToString() + "-" + AspNetPager1.EndRecordIndex.ToString() + "/" + AspNetPager1.RecordCount.ToString() + "条记录"; dt.Dispose(); } protected void AspNetPager1_PageChanged(object sender, EventArgs e) { bindDL(); }