我刚刚开始使用ASP.NET MVC,我有一个小问题:似乎每个控制器都有一个附加文件夹的路径,所以我的网站变成mydomain.net/Home/something。有可能以某种方式摆脱/ Home部分,以便家庭控制器成为我的网站的“默认”,而且可以只使用mydomain.net/something吗?
答案 0 :(得分:3)
当然,只需定义一条路线:
routes.MapRoute("{action}/{id}", new {controller="Home", action="Index", id=""});
唯一的问题是对其他控制器的请求怎么办?例如,是
/产品/富
对HomeController.Product(“Foo”)或ProductController.Foo()的请求?
您可能需要使用约束来区分清楚。
答案 1 :(得分:1)
我做了一篇关于处理这个问题的简单方法的博文。我创建了一个路由约束,用于选择要用于站点根目录的控制器。 Here is the blog post if you're interested.