MVC路由排序

时间:2014-12-01 11:06:00

标签: asp.net-mvc asp.net-mvc-routing

我有这两条规则

routes.MapRoute("Default", "{controller}/{action}", new { controller = "Home", action = "Index" });
routes.MapRoute("Custom", "X{controller}/{action}");

有一个名为" Custom"的控制器。和方法"索引"但是调用 localhost / XCustom / Index 会给我一个404.

我已经读过尝试过路线,直到找到匹配为止。 由于网址与第一条路线不匹配,为什么不尝试匹配第二条路线。

*我知道如果我改变路线顺序,这是有效的。

1 个答案:

答案 0 :(得分:0)

问题在于{controller}/{action}路由,系统会尝试找到您没有的名为XCustomController的控制器。所以实际上url与你的路线匹配,你没能为它提供有效的控制器。