在ASP.NET MVC中删除/ Home路径名

时间:2009-01-16 23:32:26

标签: c# asp.net-mvc

我刚刚开始使用ASP.NET MVC,我有一个小问题:似乎每个控制器都有一个附加文件夹的路径,所以我的网站变成mydomain.net/Home/something。有可能以某种方式摆脱/ Home部分,以便家庭控制器成为我的网站的“默认”,而且可以只使用mydomain.net/something吗?

2 个答案:

答案 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.