【发布时间】:2015-12-28 15:17:46
【问题描述】:
我需要从我的项目的 URL 中删除控制器“主页”,现在它看起来像这样:example.com/Home/contact,我希望它看起来像这样:example.com/contact(也适用于其他部分如服务、我们的团队、画廊等)
我尝试删除出现在 RouteConfig.cs 代码中“{action}/{id}”之前的“{controller}”,如下所示:
namespace myproject
{
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default",
"{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
}
}
控制器“主页”从 URL 中消失,但以下登录和管理链接不起作用:
@Html.ActionLink("Login here", "Login", "Account")
@Html.ActionLink("Manage website", "Index", "Manage")
如果不在 URL 中显示控制器“主页”,如何使这些链接正常工作?
【问题讨论】:
-
您需要为这些控制器路由添加附加规则。见这里msdn.microsoft.com/en-us/library/cc668201.aspx
标签: controller asp.net-mvc-5 url-routing