мой пользовательский TagHelpers не работает в ядре Asp.net - PullRequest
0 голосов
/ 25 ноября 2018

Я следовал нескольким руководствам по созданию custom tag helper для ASP Core.

У меня есть два tag helpers в одном namespace:

namespace Forum.Core.TagHelpers
{

    [HtmlTargetElement(Attributes = nameof(Condition))]
    public class ConditionTagHelper : TagHelper
    {
        public bool Condition { get; set; }

        public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            if (!Condition)
            {
                output.SuppressOutput();
            }
        }
    }

}

И

namespace Forum.Core.TagHelpers
{
    [HtmlTargetElement(Attributes = nameof(Permission))]
    class RolePermissionTagHelper : TagHelper
    {
        public bool Permission { get; set; }
        public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            output.SuppressOutput();
        }

    }
}

И я добавляю зависимости в

_ViewImports.cshtml

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

@addTagHelper *, Forum.Core

Но я могу использовать только Условие на своих страницах!

Истинный стиль кода

MyProblem

Любые предложения приветствуются.

1 Ответ

0 голосов
/ 26 ноября 2018

Это из-за того, что ваш Permissiontaghelper не является публичным.Попробуйте это:

namespace Forum.Core.TagHelpers
{
    [HtmlTargetElement(Attributes = nameof(Permission))]
    public class RolePermissionTagHelper : TagHelper
    {
        public bool Permission { get; set; }
        public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            output.SuppressOutput();
        }

    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...