Asp.net mvc 5 默认情况下,MVC控制器查找aspx页面

Asp.net mvc 5 默认情况下,MVC控制器查找aspx页面,asp.net-mvc-5,Asp.net Mvc 5,我有一个web应用程序的解决方案,该应用程序在一个单独的类库中包含模型、视图和控制器。我的视图文件夹中有Razor视图。当我键入url(例如Home/Index)时,构造函数会正确地找到正确的view Index.cshtml,但是如果不输入操作名称,我会收到一个错误,说明找不到资源,请求的url是/Home/Index.aspx 默认情况下,如何使构造函数查找razor视图。我的路由配置只是标准的默认配置 public static void RegisterRoutes(RouteColl

我有一个web应用程序的解决方案,该应用程序在一个单独的类库中包含模型、视图和控制器。我的视图文件夹中有Razor视图。当我键入url(例如Home/Index)时,构造函数会正确地找到正确的view 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 }
            );
    }
除了我有一个对控制器名称空间的引用


谢谢

您在默认路线中缺少控制器的默认值

 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 }
            );
    }

嗨,谢谢你的回复。我已经为controller=“Home”添加了默认值,但仍然得到相同的错误。