MVC Controller默认查找aspx页面

时间:2015-02-17 17:19:49

标签: asp.net-mvc-5

我有一个带有一个Web应用程序的解决方案,其中包含模型和视图以及单独的类库中的控制器。我在views文件夹中有Razor视图。当我输入url(例如Home / Index)时,构造函数正确地找到了正确的视图index.cshtml,但是如果没有输入动作名称,我会收到一条错误,指出资源不能找到并且请求的URL是/Home/index.aspx。

默认情况下,如何让构造函数查找razor视图。我的路由配置只是标准的默认配置。

 public static void RegisterRoutes(RouteCollection routes){

        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                namespaces: new[] { "MyProject.Controllers" },
                defaults: new { action = "Index", id = UrlParameter.Optional }
            );
    }

除了我引用了Controllers名称空间。

由于

1 个答案:

答案 0 :(得分:0)

您在默认路线中错过了控制器的默认值。

 public static void RegisterRoutes(RouteCollection routes){

        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                namespaces: new[] { "MyProject.Controllers" },
                defaults: new { action = "Index", controller = "Home", id = UrlParameter.Optional }
            );
    }