我在RouteConfig中有这个规则:
routes.MapRoute(
name: "UserProfile",
url: "users/{uid}",
defaults: new { controller = "Users", action = "Profile" }
);
如何使用@Html.ActionLink
链接到此操作?使用@Html.Routelink
这样做很容易,但是可以使用前者吗?
答案 0 :(得分:1)
您只需传入操作名称,控制器名称,然后传递包含其他路由值的对象,在本例中为uid
@Html.ActionLink("User Profile", "Profile", "Users", new { uid = 1 }, null)
如果由于您的路线设置方式而未转换为/users/{uid}
,则应使用@Html.RouteLink()
。 @Html.ActionLink()
用于直接链接到操作。您提供了操作和控制器,它根据您设置的路径提供了一个URL。如果路线存在冲突,您可能无法获得您期望的网址。在这种情况下,链接到您想要的路线是可行的。