URLRewrite僞靜態後AspNetPager分頁控件列表輸出的靜態化方法
首先設置WEB.CONFIG
<RewriterRule>
<LookFor>~/article_list_(\d{1,6})_(\d{1,6})\.htm</LookFor>
<SendTo>~/article_list.aspx?classid=$1&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>