asp.net mvc 4没有指定默认路由?

时间:2013-08-30 00:44:38

标签: c# asp.net-mvc-4 asp.net-mvc-routing

我正在考虑在没有默认参数默认值的mvc 4应用程序中设置自定义路由 (http://www.asp.net/mvc/tutorials/controllers-and-routing/creating-custom-routes-cs

我稍微修改了一下:

routes.MapRoute(
            "Blog",                                           // Route name
            "Archive/{entryDate}"                            // URL with parameters
);

问题是我在点击时遇到错误:

http://localhost:80/Archive/12-25-2009

The matched route does not include a 'controller' route value, which is required.

1 个答案:

答案 0 :(得分:4)

您需要提供此路线将会遇到的Controller

routes.MapRoute(
    "Blog",                                           // Route name
    "Archive/{entryDate}",                        // URL with parameters
    new { controller = "Archive", action = "Entry" }
);

如果没有这个,路由就不知道你的请求应该被“路由”到什么Controller。这是因为您的默认路线似乎丢失了......一般会回到您的家庭控制器。