AspNetCore 自定义 TagHelpers 不显示

AspNetCore custom TagHelpers not displaying

我是 运行 一个 AspNetCore 应用程序,正在尝试创建自定义 TagHelper,但它无法呈现。我已经阅读了很多文章,我认为我拥有我需要的一切。

project.json

"Microsoft.AspNetCore.Mvc.TagHelpers": "1.1.3",

_ViewImport.cshtml

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

ReverseTextDivTagHelper.cs

下面的代码是我从我尝试的一个例子中得到的

[HtmlTargetElement("tag-name")]
    public class ReverseTextDivTagHelper : TagHelper
    {
        private string _divData = string.Empty;
        public string DivData
        {
            get
            {
                char[] reversedData = _divData.ToCharArray();
                Array.Reverse(reversedData);
                String sDataReversed = new String(reversedData);
                return AllCaps ? sDataReversed.ToUpper() : sDataReversed;
            }
            set { _divData = value; }
        }

        public bool AllCaps { get; set; }

        public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            output.TagName = "div";
            output.Content.SetContent(DivData);
        }
    }

然后在局部视图中我这样称呼它

<reverse-text-div all-caps="true" div-data="Jacques"></reverse-text-div>

点 1: [HtmlTargetElement("tag-name")] 必须与实际 HTML 标签相同,即 reverse-text-div。应该是[HtmlTargetElement("reverse-text-div")]

第 2 点: 为您的属性应用 HtmlAttributeName,例如[HtmlAttributeName("all-caps")]