2011-03-25 42 views
1

我不能找出如何将asp.net mvc引导到所需的控制器,以便向我的网站的根目录发送请求。asp.net mvc路由条目的网站根请求

我试过很多不同的条目中的RegisterRoutes包括:

routes.MapRoute(
    "MyHome", 
     "", 
     new { controller = "MyController", action = "Index", id = UrlParameter.Optional } 
); 

我得到的错误是:

视图“索引”或它的主人没有被发现或没有视图引擎支持搜索的位置。搜索以下位置: 〜/ Views/Home/Index.aspx 〜/ Views/Home/Index.ascx 〜/ Views/Shared/Index.aspx 〜/ Views/Shared/Index.ascx 〜/ Views /Home/Index.cshtml 〜/浏览/首页/ Index.vbhtml 〜/查看/共享/ Index.cshtml 〜/查看/共享/ Index.vbhtml

我怎样才能得到网站的根目录的请求将期望的控制器?

更新:仍然无法解决问题,所以创建了一个新的MVC项目,它开箱即用。我曾经多次重命名过原始项目,所以也许在某处搞砸了。

回答

0

基于错误信息......

  1. 这是要叫HomeController的控制器。所以,我猜你有另一个路线(也许是默认值?),它将其引导到HomeController?

  2. 错误消息是有关视图不是控制器。这是与路由不同的问题。

实现你所要求的最简单的方法是编辑在创建MVC3项目时创建的默认路由。

routes.MapRoute(
“默认”,//路线名称
“{控制器}/{行动} /(编号)”,// URL与参数
新{控制器= “myController的” ,action =“Index”,id = UrlParameter.Optional} //参数默认值
);

0

要启动MyController,您的网址应类似于(基于当前路由)http://localhost/MyController

看着你的错误,我感觉你开始使用空的MVC项目模板。是这样吗?