• 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>

  • 相关阅读:
    Angular 项目打包之后,部署到服务器,刷新访问404解决方法
    C# yield return; yield break;
    C#获取枚举描述
    21、uwp UI自动化测试(WinAppDriver)
    20、uwp打包失败(All app package manifests in a bundle must declare the same values under the XPath *[local-name()='Package']/*[local-name()='Dependencies'])
    19、UWP 新特性(Creator Update)
    18、利用 Windows Device Portal 获取用户闪退 dump
    17、uwp 打包失败记录
    爱奇艺招聘uwp开发
    16、C++获取磁盘空间的方法
  • 原文地址:https://www.cnblogs.com/chencidi/p/2627315.html
Copyright © 2020-2023  润新知