У меня было сомнение, а именно:
Когда я использую следующий код:
@(Html.ActionLink("Click Me", "ACTION", new {QueryName = ViewBag.QueryName}))
Я получу вывод в формате HTML так:
Click Me
Хорошо, но что, если я хочу получить следующее в качестве вывода HTML?
Мне нужна только часть href ссылки действия http://localhost/ControllerName/ACTION?QueryName=098, без тега "a"
Должен ли я написать для него расширение или у меня есть какое-то предварительное условие для этого?
Надеюсь, я был достаточно ясен.
Спасибо
ОБНОВЛЕНИЕ
Пока что я написал расширение, которое явно не лучший способ сделать это, как вы можете видеть ниже, но мне это нужно:
public static class ActionURLPathExtension
{
public static MvcHtmlString ActionURLPath(this HtmlHelper helper , string ActionName, string ControllerName, object RouteValues)
{
string resultURL=LinkExtensions.ActionLink(helper," ",ActionName,ControllerName, RouteValues, new object()).ToHtmlString();
resultURL= resultURL.Replace("</a>","") .Replace("<a href=\"","") .Replace("\">","").Trim() ;
return MvcHtmlString.Create(helper.ViewContext.HttpContext.Server.UrlDecode(resultURL));
}
}
В HTML я использовал это так:
<span>Now you can paste this URL in your address bar : @(Html.ActionURLPath("CarregarFiltros", "Filtros", new { QueryId = "%0" , noCache = new Random().Next(0,1989) }))</span>