我无法弄清楚如何将asp.net mvc指向所需的控制器以获取对我网站根目录的请求。
我在RegisterRoutes中尝试了很多不同的条目,包括:
routes.MapRoute(
"MyHome",
"",
new { controller = "MyController", action = "Index", id = UrlParameter.Optional }
);
我得到的错误是:
未找到视图“索引”或其主控,或者没有视图引擎支持搜索的位置。搜索了以下位置: 〜/浏览/首页/的Index.aspx 〜/浏览/首页/ Index.ascx 〜/查看/共享/的Index.aspx 〜/查看/共享/ Index.ascx 〜/浏览/首页/ Index.cshtml 〜/浏览/首页/ Index.vbhtml 〜/查看/共享/ Index.cshtml 〜/ Views / Shared / Index.vbhtml
如何让网站根请求转到所需的控制器?
更新:仍然无法修复问题,因此创建了一个开箱即用的新MVC项目。我曾经多次重命名原始项目,所以也许在某个地方搞砸了。
答案 0 :(得分:0)
要启动MyController
,您的网址应该如下(基于当前路由)http://localhost/MyController
。
看着你的错误,我感觉你是从空的MVC项目模板开始的。是这样的吗?
答案 1 :(得分:0)
根据错误讯息...
它将转到名为HomeController的控制器。所以,我猜你有另一条路线(也许是默认路由?)将它引导到HomeController?
错误消息是关于视图而不是控制器。这与路由不同。
实现所要求的最简单方法是编辑创建MVC3项目时创建的默认路由。
routes.MapRoute(
“默认”,//路线名称
“{controller} / {action} / {id}”,//带参数
的网址
new {controller =“ MyController ”,action =“Index”,id = UrlParameter.Optional} //参数默认值
);