Я создал привязку для создания тега для Html.ActionLink
html-помощника, который работает нормально:
<element name="actionlink">
Html.ActionLink("child::*", "@action", new RouteValueDictionary{{"@route-*"}})
</element>
Использование тейджа, например <actionlink action="index" route-controller="users" route-id="${Model.Id}"/>
, позволяет правильно создать тег привязки с правильным атрибутом href
, как и следовало ожидать.
Однако я попытался перегрузить привязку к этому тегу, чтобы я мог добавить атрибуты html, такие как id, класс и т. Д., Например:
<element name="actionlink">
Html.ActionLink("child::*", "@action", new RouteValueDictionary{{"@route-*"}}, new Dictionary[[string,object]]{{"@*"}})
</element>
Вы заметите, что он имеет подстановочный знак, передаваемый последнему параметру Dictionary, который является параметром html attribute HtmlHelper
. Однако, когда я использую тег actionlink следующим образом:
<actionlink action="index" route-controller="users" route-id="${Model.Id}" id="linkId" class="className"/>
Создает ту же разметку, что и при использовании выше, т. Е. Не содержит атрибуты id
и class
html. Я делаю что-то в корне не так? Кто-нибудь может увидеть, что не так?