для подхода к преодолению этого.
ел бы вызвать акциюScriptTagHelper
(просмотреть источник на GitHub) так что бы подражатьasp-append-version="true"
приписывать.
Я знаю, что правильный способ использовать это просто изменить это:
<script src="somefile.js"></script>
к этому:
<script src="somefile.js" asp-append-version="true"></script>
Этот процесс очень похож на версионирование CSS включает и изображения (LinkTagHelper
а такжеImageTagHelper
).
Поскольку у меня есть много скриптов, таблиц стилей и изображений, я бы хотел немного автоматизировать их. Поэтому вместо добавленияasp-append-version="true"
для каждого элемента HTML я бы предпочел создать собственный TagHelper, который сделает это за меня.
В этом и заключается проблема - она не работает.
В настоящее время мой TagHelper охватывает толькоscript
теги и выглядит так:
[HtmlTargetElement("script", Attributes = "src")]
public class TestTagHelper : TagHelper
{
public override int Order => int.MinValue;
public override void Process(TagHelperContext context, TagHelperOutput output)
{
if(!context.AllAttributes.ContainsName("asp-append-version"))
{
output.Attributes.SetAttribute("asp-append-version", "true");
}
}
}
Но вместо запуска по умолчаниюScriptTagHelper
буквально выводитasp-append-version="true"
на выходе HTML. Я также установилOrder
свойство INT_MIN, чтобы оно запускалось перед любыми другими помощниками тегов, но все равно не работает.
Есть ли способ сделать эту работу?