Я не смог найти способ дать несколько имен одному вспомогательному тегу (псевдониму) в netcore20 для следующего определения класса вспомогательного тега
[HtmlTargetElement(Attributes = AttributeName)]
public class InDomIfTagHelper : TagHelper
{
private const string AttributeName = "idi,in-dom-if";
[HtmlAttributeName(AttributeName)]
public bool InDomIf { get; set; }
public override void Process(TagHelperContext context, TagHelperOutput output)
{
base.Process(context, output);
if (!InDomIf)
{
output.SuppressOutput();
}
}
}
Я хотел бы иметь возможность ссылаться на мой помощник по тегам, используя оба следующих синтаксиса
<li idi='false'>content</li>
<li in-dom-if="true">content2</li>
Я провел небольшое исследование и нашел такие сообщения, как этот на SO, но требует обоих тегов (в основном, предложение AND).
Я все еще пытался определить свое свойство Attributes
с помощью "idi,in-dom-if"
, а также "[idi],[in-dom-if]"
, последний на самом деле дал мне ошибку: Недопустимое свойство привязки помощника тега
Admin.TagHelpers.InDomIfTagHelper.InDomIf '. Помощники тегов не могут связываться с атрибутами HTML с именем «[idi], [in-dom-if]», потому что имя содержит символ «]».
Я тоже пробовал это "[name=idi],[name=in-dom-if]"
, и я тоже добавил кавычки вокруг имен тегов ... ничего из этого не сработало.
Поскольку я не могу найти много информации об определении имен вспомогательных атрибутов тегов с помощью предложения OR
, мне интересно, возможно ли это вообще ...
Я бы хотел избежать определения дважды одной и той же логики в двух разных классах, чтобы у них могло быть одно и то же имя.
Это вообще возможно? Если да, как я могу этого добиться?