更改MVC路由

时间:2017-06-23 08:46:40

标签: c# .net asp.net-mvc-4 asp.net-mvc-3

我在IIS 7.5上托管了一个ASP.NET MVC网站。问题是站点名称和控制器名称相同,因此我必须输入两次控制器名称。

我不允许更改网站或控制器的名称。我目前的网址为例如。

local/home/home/action

但我已经分享为

localhost/home/action

现在我需要配置应用程序,以便应用程序正确路由

localhost/home/action

2 个答案:

答案 0 :(得分:1)

尝试在其他路线之前添加到RouteConfig.cs的新路线:

routes.MapRoute(
    name: "DefaultHome",
    url: "{action}/{id}",
    defaults: new { controller = "Home", id = UrlParameter.Optional }
);

routes.MapRoute(
    name: "Default",
    url: "{controller}/{action}/{id}",
    defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
...

答案 1 :(得分:1)

如果您使用的是MVC5,则可以使用Route属性。像这样:

[Route(“yourroot”)]
public ActionResult Index() { … }

可在此处找到更多信息Attribute Routing in ASP.NET MVC 5

希望这有帮助