更改 MVC 路由

Change MVC Routes

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

不允许我更改站点或控制器的名称。例如,我目前的 URL。

local/home/home/action

但我已分享为

localhost/home/action

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

localhost/home/action

尝试在其他路线之前添加到 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 }
);
...

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

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

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

希望对您有所帮助