【问题标题】:Request.Querystring after URL rewriteURL重写后的Request.Querystring
【发布时间】:2013-07-14 18:36:45
【问题描述】:

在将查询字符串重写为漂亮的 url 后,是否有一种简单的方法来获取它的值? (网址重写)

例如:

www.example.com/Home?CatId=Shoes

在这里我可以使用 request.querystring 来从数据库中获取数据。

www.example.com/shoes

但在这里我不能这样做......

【问题讨论】:

  • 但是我怎样才能从链接中获取“鞋子”值,就像我使用查询字符串获取值一样?
  • 同理,页面Request.Querystring("CatId")

标签: c# asp.net


【解决方案1】:

您可以在 IIS 7.0 上安装 url re-writer 模块,然后在 web.config 中执行以下操作以创建友好的 url:

        <rewriteMaps>
            <rewriteMap name="CatsMaps">
                <add key="www.example.com/Home?CatId=Shoes" value="/shoes" />
            </rewriteMap>
        </rewriteMaps>

如果您将所有 URL 都存储在数据库中,请查看 DBProvider:

http://www.iis.net/learn/extensions/url-rewrite-module/using-custom-rewrite-providers-with-url-rewrite-module

【讨论】:

    【解决方案2】:

    您可以枚举重写映射并检查每个值,但显然您可以获得多个匹配项。

    【讨论】:

      猜你喜欢
      • 2014-10-01
      • 2011-04-22
      • 2012-10-18
      • 1970-01-01
      • 2011-09-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多