是否有人知道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
);
}
答案 0 :(得分:0)
选中此article on Three common ASP.NET MVC URL routing issues
你需要按照大多数到最少的顺序添加它们[路线] 具体