0

有人知道 IgnoreRoute() 指令是否在第一个匹配的规则(如 Apache 指令)上触发,还是它们的行为不同?

我想将我的 elmah.axd 路由到与其他 .axd 文件不同的位置,因此我创建了 2 个 IgnoreRoute 规则,其中第一个规则将捕获 elmah.axd,第二个规则将捕获所有其他 .axd 文件。

这是我所拥有的:

  public static void RegisterRoutes(RouteCollection routes)
    {

        // AXD files
        routes.IgnoreRoute("AdminTools/elmah.axd/{*pathinfo}");
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        //Everything else
        routes.IgnoreRoute("{resource}.txt");
        routes.IgnoreRoute("favicon.ico");

        routes.MapRoute(
            "Default", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
        );

    }
4

1 回答 1

0

查看这篇关于三个常见 ASP.NET MVC URL 路由问题的文章

您需要按最具体到最不具体的顺序添加它们 [路线]

于 2013-11-06T10:21:17.847 回答