我遇到了 html.actionlink 的问题。我定义了两条路线:
routes.MapRoute(
"AdminDefault",
"Admin/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Page", action = "Details", id = "0" }
);
当我希望它使用默认控制器时,actionlink 正在使用 AdminDefault。如何让它使用默认路由而不使用路由链接?
添加更多信息。我有一个简单的操作(home/index),它显示了一个视图(index.cshtml),在那个视图中我有:
@Html.ActionLink("About", "About", "Home")
当我希望它是“/Home/About”时,它会生成一个“/Admin/Home/About”的 url,defaultadmin 路由是这样我可以稍后创建链接到 /admin/controller/action 的任何管理页面,但我希望默认生成的 url 不在管理员之下。