在Web.config中配置ASP.NET路由

时间:2013-10-09 13:59:40

标签: asp.net routing web-config

有没有办法在web.config文件中配置ASP.NET路由?我不需要任何花哨的东西。如果用户访问/ myApp / list,我想加载/myApp/list.html。但是,我不希望地址栏发生变化。

这可能吗?如果是这样,怎么样?

2 个答案:

答案 0 :(得分:6)

最好的方法是在IIS中使用Url Rewrite模块:http://www.iis.net/learn/extensions/url-rewrite-module

安装Url Rewrite之后如何将此规则导入web.config:

<system.webServer>
    <rewrite>
      <rules>
          <rule name="my-first-url-rule" stopProcessing="true">
            <match url="^/myApp/list$" />
            <action type="Rewrite" url="/myApp/list.html" appendQueryString="true" />
          </rule>
      </rules>
    </rewrite>
</system.webServer>

答案 1 :(得分:1)

截至目前,没有开箱即用的方法来配置web.config文件中的路由。

似乎愿意在应用程序启动时添加新路由。 这并不能阻止我们创建自定义配置部分并从那里读取路径。

这些是猜测的原因。 大多数情况下,似乎添加新路由可能容易引入路由错误,应该进行良好的回归测试。因此,它可能会作为新产品发布的一部分完成。也许这可能是它无法通过配置文件配置的原因之一。 另一个原因可能是路由规则非常复杂,需要将它们放入xml格式 - 约束,自定义路由处理程序等。