• asp.net大文章分页


    做文章内容系统,经常需要文章分页,写了一个类,以后方便调用,新建一个类ContentPager.cs,直接复制代码既可,

    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.ComponentModel;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Web.SessionState; 

    namespace Models
    {
       public class ContentPager: System.Web.UI.Page 
        {
           private System.Web.UI.WebControls.HyperLink lnknext;  
           private System.Web.UI.WebControls.HyperLink lnkprev;    
           private System.Web.UI.WebControls.HyperLink lnkfist;    
           private System.Web.UI.WebControls.HyperLink lnklast;     
           private System.Web.UI.WebControls.Label pagenum;    
           private System.Web.UI.WebControls.Label pagecount;
           private System.Web.UI.WebControls.Literal displaycontent;
                  public ContentPager()    
                  {       
                      //       
                      // TODO: 在此处添加构造函数逻辑        
                      //    
                   } 
              public void datapager(string content,string query) 
              {
                  string PagerSplit ="[RG_PAGE]";// System.Configuration.ConfigurationManager.AppSettings["PagerSplit"];//从 web.config中获取分页符,当然这里可以自己定义,为了方便还是放到配置文件或者数据库中。
                  string[] contentArray = StringSplit(content, PagerSplit);//这里是一个方法,摘自网上    
                  int PageCount = contentArray.Length;
                
                  this.pagecount.Text =  PageCount.ToString();       
                  int CurPage;           //确定当前页数      
                  if (System.Web.HttpContext.Current.Request.Params["Page"] != null)       
                  {          
                      CurPage = Convert.ToInt32(System.Web.HttpContext.Current.Request.Params["Page"]);       
                  }       
                  else         
                  {         
                      CurPage = 1;         
                  }         
                  if (CurPage < 1)
                      CurPage = 1;      
                  if (Convert.ToInt32(System.Web.HttpContext.Current.Request.Params["Page"]) > PageCount)   
                  {         
                      CurPage = PageCount;       
                  }        
                  //显示当前页数   
                  this.pagenum.Text = CurPage.ToString();        
                  //下一页 
                  if (CurPage != PageCount)       
                  {           
                      lnknext.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage + 1) + query;    
                  }       
                  //上一页    
                  if (CurPage > 1)     
                  {           
                      lnkprev.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage - 1) + query;         
                  }    
                  //第一页       
                  if (CurPage != 1)     
                  {          
                      lnkfist.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(1) + query;        
                  }      
                  //最后一页     
                  if (CurPage != PageCount)       
                  {            
                      lnklast.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(PageCount) + query;     
                  }      
                  displaycontent.Text = contentArray[CurPage - 1].ToString();   
              }        
           #region System.Web.UI.WebControls.HyperLink DisplayContent  
              public System.Web.UI.WebControls.Literal DisplayContent   
               {    
                   get      
                   {          
                       return this.DisplayContent;  
                   }       
                   set     
                   {           
                       this.displaycontent = value; 
                   }     
               }   
           #endregion   
           #region  System.Web.UI.WebControls.HyperLink Lnkprev
           public System.Web.UI.WebControls.HyperLink Lnkprev   
           {        
               get      
               {            
               return this.lnkprev; 
               }         
               set      
               {            
                   this.lnkprev = value; 
               }    
           }   
           #endregion  
           #region  System.Web.UI.WebControls.HyperLink Lnknext
           public System.Web.UI.WebControls.HyperLink Lnknext 
           {       
               get 
               {   
                   return this.lnknext;
               }       
               set
               {        
                   this.lnknext = value;
               }  
           }   
           #endregion 
           #region    System.Web.UI.WebControls.HyperLink Lnkfist
           public System.Web.UI.WebControls.HyperLink Lnkfist  
           {      
               get  
              {           
                   return this.lnkfist;
               }      
               set 
               {   
                   this.lnkfist = value;  
               }   
           }   
           #endregion
           #region  System.Web.UI.WebControls.HyperLink Lnklast;
           public System.Web.UI.WebControls.HyperLink Lnklast 
           {         
               get      
               {          
                   return this.lnklast;    
               }   
               set     
               {      
                   this.lnklast = value;  
               }   
           }     
           #endregion
           #region System.Web.UI.WebControls.Label Pagenum
           public System.Web.UI.WebControls.Label Pagenum
           {         
               get    
               {       
                   return this.pagenum;  
               }      
               set      
               {      
                   this.pagenum = value;  
               }     
           }  
           #endregion 
           #region  System.Web.UI.WebControls.Label Pagecount
           public System.Web.UI.WebControls.Label Pagecount
           {         
               get      
               {       
                   return this.pagecount; 
               }      
               set     
               {        
                   this.pagecount = value; 
               }   
           }     
           #endregion  
           #region 将字符串分割成数组    
            /// <summary>         /// 将字符串分割成数组         
             /// <param name="strSource">param>       
             /// <param name="strSplit">param>      
             /// <returns>returns>      
              public string[] StringSplit(string strSource, string strSplit)
              {         
                  string[] strtmp = new string[1];   
                  int index = strSource.IndexOf(strSplit, 0);
                  if (index < 0)      
                  {              
                      strtmp[0] = strSource;   
                      return strtmp;     
                  }           
                  else     
                  {          
                      strtmp[0] = strSource.Substring(0, index);
                      return StringSplit(strSource.Substring(index + strSplit.Length), strSplit, strtmp);
                  }    
              }      
           #endregion       
           #region 采用递归将字符串分割成数组       
           /// <summary>         /// 采用递归将字符串分割成数组         
           /// summary>       
           /// <param name="strSource">param>       
           /// <param name="strSplit">param>     
           /// <param name="attachArray">param>        
           /// <returns>returns>    
            private string[] StringSplit(string strSource, string strSplit, string[] attachArray)  
            {             
                string[] strtmp = new string[attachArray.Length + 1];
                attachArray.CopyTo(strtmp, 0);    
                int index = strSource.IndexOf(strSplit, 0);     
                if (index < 0)       
                {             
                    strtmp[attachArray.Length] = strSource;       
                    return strtmp;     
                }          
                else      
                {             
                    strtmp[attachArray.Length] = strSource.Substring(0, index);   
                    return StringSplit(strSource.Substring(index + strSplit.Length), strSplit, strtmp);   
                }       
            }       
           #endregion 
       } 
    }

    前台页面:

        <div class="news-content">
                                    <asp:Literal ID="displaycontent" runat="server"></asp:Literal>

             
           </div>
          
           <ul class="news-bottom listbt" id="list-bottom"> 
                <strong><a href="#" title="">TOP</a></strong>
                <li>
                                                   
                 第<asp:Label id="currentpage" runat="server"></asp:Label>页 </li>
                 共<li> <asp:label id="totalpage" runat="server"></asp:label>页</li>
                 <li> <asp:hyperlink id="lnkfist" runat="server" >首页</asp:hyperlink>| </li>
                 <li> <asp:hyperlink id="lnkprev" runat="server" >前页</asp:hyperlink>|</li>
                    <li> <asp:hyperlink id="lnknext" runat="server" >下页</asp:hyperlink>| </li>    
                    <li> <asp:hyperlink id="lnklast" runat="server" >尾页</asp:hyperlink>
                      </li>
              
           </ul>

     调用方法:

    pager.Lnknext = this.lnknext;
                pager.Lnkprev = this.lnkprev;
                pager.Lnklast = this.lnklast;
                pager.Lnkfist = this.lnkfist;
                pager.Pagenum = this.currentpage; pager.Pagecount = this.totalpage;
                pager.DisplayContent = this.displaycontent; 
                string query = "&id=" + id;
                pager.datapager(conntent, query); 

  • 相关阅读:
    使用AOP 实现Redis缓存注解,支持SPEL
    springmvc 双亲上下文导致的 No mapping found for HTTP request
    调用iframe 中的js[兼容各种浏览器]
    NIO学习:异步IO实例
    byte数组与对象之间的相互转换
    NIO学习:buffer读入与写出(文件复制示例)
    NIO学习:使用Channel、Buffer写入文件
    使用摘要流获取文件的MD5
    ActiveMQ入门实例
    获取java项目 classpath目录
  • 原文地址:https://www.cnblogs.com/stulife/p/1721254.html
Copyright © 2020-2023  润新知