Я пытаюсь использовать Html.RouteLink в представлении для создания ссылки на именованный якорь на другой странице. Есть несколько определений для RouteLink, которые включают опцию фрагмента, но я пытаюсь выяснить, есть ли другой способ.Создание ссылки, содержащей фрагмент с ASP.Net MVC Routelink
public static string RouteLink(
this HtmlHelper htmlHelper,
string linkText,
string routeName,
string protocol,
string hostName,
string fragment,
Object routeValues,
Object htmlAttributes
)
- это очевидное решение, но похоже неудобное. Я бы предпочел, чтобы быть в состоянии сделать что-то вроде
Html.RouteLink("Looga", new { Controller = "Cooga", Action = "Aooga", Fragment = "Fooga" })
и есть, что возвращение
<a href="/Cooga/Aooga#Fooga">Looga</a>
это возможно или мне нужно указать каждую небольшую часть URL, чтобы получить фрагмент с помощью встроенного - в помощниках. Я мог бы также просто сделать это вручную, как
<a href="<%= Url.RouteUrl(new { Controller = "Cooga", Action = "Aooga" }) %>#Fooga>Looga</a>
но это похоже на то, RouteLink должен быть в состоянии обрабатывать более элегантно.
Необходимо определить протокол и имя хоста, чтобы я мог добавить фрагмент, кажется глупым. Я надеялся, что есть лучший способ. – Tivac