Я написал помощник по тегам, который я могу использовать следующим образом ...
<mytaghelper attr1="jim"></mytaghelper>
Я бы хотел сократить это до просто ...
<mytaghelper attr1="jim">
... или хотя бы ...
<mytaghelper attr1="jim"/>
Однако я не могу заставить это работать. Вот пример кода для метода Process ...
public override void Process(TagHelperContext context, TagHelperOutput output) {
output.TagName = "div";
output.PreContent.SetHtmlContent("<div>");
output.Content.SetHtmlContent("OUTPUT HTML GOES HERE");
output.PostContent.SetHtmlContent("</div>");
output.Attributes.Clear();
}
Я попытался добавить параметр TagStructure
в атрибут HtmlTargetElement
класса ...
[HtmlTargetElement("mytaghelper", TagStructure = TagStructure.WithoutEndTag)]
... но, похоже, это ничего не меняет. <mytaghelper attr1="jim"/>
генерирует <div />
и <mytaghelper attr1="jim"></mytaghelper>
генерирует <div></mytaghelper>
.
Если я установлю TagStructure
на NormalOrSelfClosing
, то включенный закрывающий тег сработает, но <mytaghelper attr1="jim"/>
выдаст пустой <div />
Кто-нибудь может объяснить, что мне нужно делать?