我在IIS 7.5上托管了一个ASP.NET MVC网站。问题是站点名称和控制器名称相同,因此我必须输入两次控制器名称。
我不允许更改网站或控制器的名称。我目前的网址为例如。
local/home/home/action
但我已经分享为
localhost/home/action
现在我需要配置应用程序,以便应用程序正确路由
localhost/home/action
答案 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
希望这有帮助