URLRewrite僞靜態與AspNetPager分頁控件的結合

URLRewrite僞靜態後AspNetPager分頁控件列表輸出的靜態化方法

首先設置WEB.CONFIG

<RewriterRule> 
<LookFor>~/article_list_(\d{1,6})_(\d{1,6})\.htm</LookFor> 
<SendTo>~/article_list.aspx?classid=$1&amp;page=$2</SendTo> 
</RewriterRule>

注:第一個參數是類別ID,第二個參數是分頁數字(第幾頁)!

再者在 在AspNetPager前臺註冊的時候一定要寫UrlPaging="true"

<%@ Register assembly="AspNetPager" namespace="Wuqi.Webdiyer" tagprefix="webdiyer" %>

<webdiyer:AspNetPager ID="AspNetPager1" runat="server" AlwaysShow="true" 
           FirstPageText="首頁" NextPageText="下一頁" PrevPageText="前一頁" LastPageText="尾頁" 
           PageSize="20" ShowInputBox="Always" CustomInfoHTML="共%PageCount%頁,當前爲第%CurrentPageIndex%頁,每頁%PageSize%條"
           onpagechanged="AspNetPager1_PageChanged" UrlPaging="true">
</webdiyer:AspNetPager> 

最後在CS文件中對ASPNETPAGER控件輸出URL進行控制

this.AspNetPager1.EnableUrlRewriting = true; 
this.AspNetPager1.UrlRewritePattern = "Article_list_" + classid.ToString() + "_{0}.html";

其中classid.ToString()爲分類ID 、{0}爲頁數

只要這三點都做到了!分頁應該都是可以實現的! 如果實現不了! 我估計是程序問題! 呵呵!

 

 

分頁的時候我們也希望url是僞靜態的,那麼如下操作就ok了

前臺顯示頁面: 其中 EnableUrlRewriting="true" UrlRewritePattern="~/ck_chanpin_{0}.html" 這句非常重要

<webdiyer:AspNetPager ID="myAspNetPager" runat="server" AlwaysShow="false" CustomInfoHTML="共%PageCount%頁,當前爲第%CurrentPageIndex%頁,每頁%PageSize%條"
            Font
-Size="12px" HorizontalAlign="center" OnPageChanged="myAspNetPager_OnPageChanged" ShowCustomInfoSection="Right" Width="100%" 
            CssClass
="neirong-1" FirstPageText="首 頁" LastPageText="末 頁" NextPageText="下一頁" PrevPageText="上一頁" 
            PageSize
="10"
            EnableUrlRewriting
="true"
            UrlRewritePattern
="~/ck_chanpin_{0}.html"
            
>

Web.config:

   <!-- 開始 -->
  <configSections>
  <section name="RewriterConfig" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter" />
  </configSections>
  <RewriterConfig>
  <Rules>
    <RewriterRule>
    <LookFor>~/ck_chanpin_(\d+).html</LookFor>
    <SendTo>~/ck_chanpin.aspx?page=$1</SendTo>
    </RewriterRule>
  </Rules>
</RewriterConfig> 
<!-- 結束 -->
<system.web>
    <httpHandlers>
      <add path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" validate="True" />
      <add verb="*" path="*.aspx" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
      <add verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
    </httpHandlers>
</system.web>


發佈了65 篇原創文章 · 獲贊 15 · 訪問量 19萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章