mvc3控制器不工作 - 路径映射错误

时间:2012-09-16 19:17:20

标签: asp.net-mvc-3 maproute

这是我的代码:

public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

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

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

对于第一个链接,如果我去的话它运作良好: 本地主机/歌曲 本地主机/日期 它会打开家庭控制器下的所有链接。

但对于第二个maproute: 本地主机/管理 本地主机/管理/指数 - 这些链接不起作用?谁能告诉我我做错了什么?

1 个答案:

答案 0 :(得分:1)

首先,您的默认路线必须是列表中的最后一个,而不是第一个。

其次,您有两条默认路由。 MVC无法知道使用哪一个,因此它总是选择匹配的第一个。相反,您的管理员网址应为"Admin/{action}/{id}"