Ссылка на указанный раздел страницы с помощью TagHelper в MVC Core

У меня есть представление под названием Legal, которым управляет HomeController

Я могу сделать ссылку на эту страницу, используя тег привязки или TagHelper:

<a asp-controller="Home" asp-action="Legal">Cookie policy</a>

В html в View Legal есть раздел с id="cookies"

С помощью обычного тега привязки я могу автоматически прокручивать страницу, если я это сделаю:

<a href="/Legal#cookies">Cookie policy</a>

Когда я пытаюсь сделать то же самое в TagHelper asp-action="Legal#cookies", якорь генерируется с помощью href="/Legal%23cookies", который не подхватывается моим контроллером.

Я прочитал в этом связанном вопросе, как это можно решить с помощью Razor в обычном теге привязки. Однако я хотел бы сделать это с помощью TagHelper. Есть ли способ сделать это?


person Chronicle    schedule 14.07.2018    source источник


Ответы (1)


Вы можете использовать атрибут asp-fragment. Он определяет фрагмент URL-адреса для добавления к URL-адресу после #.

<a asp-controller="Home" asp-action="Legal" asp-fragment="cookies">Cookie policy</a>

Он сгенерирует HTML:

<a href="/Legal#cookies">Cookie policy</a>
person Groxan    schedule 14.07.2018