Этот пример должен вам помочь. Этот помощник отображает различный текст ссылки в зависимости от того, вошел ли пользователь в систему или нет. Он демонстрирует использование ActionLink внутри моего пользовательского помощника:
public static string FooterEditLink(this HtmlHelper helper,
System.Security.Principal.IIdentity user, string loginText, string logoutText)
{
if (user.IsAuthenticated)
return System.Web.Mvc.Html.LinkExtensions.ActionLink(helper, logoutText, "Logout", "Account",
new { returnurl = helper.ViewContext.HttpContext.Request.Url.AbsolutePath }, null);
else
return System.Web.Mvc.Html.LinkExtensions.ActionLink(helper, loginText, "Login", "Account",
new { returnurl = helper.ViewContext.HttpContext.Request.Url.AbsolutePath }, null);
}
EDIT:
Все, что вам нужно сделать для доступа к методу Url.Action()
, это заменить параметр this HtmlHelper helper
чем-то вроде this UrlHelper urlHelp
, а затем просто вызвать urlHelp.Action(...
Надеюсь, это поможет.