TagHelper永远不会在.NET Core 2.2中执行

时间:2019-07-03 09:51:20

标签: asp.net-mvc asp.net-core

我创建了一个标记助手,以在菜单中标识当前活动页面。为此,我遵循以下指南来实现ActiveRouteTagHelper: https://benjii.me/2017/01/is-active-route-tag-helper-asp-net-mvc-core/

因此,我创建了一个名为“ Helpers”的文件夹,并添加了一个新类“ ActiveRouteTagHelper.cs”。 此类包含以下代码:

namespace MyWebsiteNamespace.Helpers
{
    [HtmlTargetElement(Attributes = "is-active-route")]
    public class ActiveRouteTagHelper : TagHelper
    {
        /* snipped, because this is exactly the same as in the linked document and doesn't matter to my question */
    }
}

,然后将我的标签助手名称空间添加到_ViewImports.cshtml文件中,如下所示:

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper *, MyWebsiteNamespace.Helpers

在我的_Layout.cshtml中,我有以下代码:

<ul class="navbar-nav">
    <li class="nav-item">
        <a is-active-route class="nav-link pl-0 text-white" asp-controller="Home" asp-action="Index">Home</a>
    </li>
    <li class="nav-item">
        <a is-active-route class="nav-link text-white" asp-controller="Home" asp-action="Privacy">Privacy</a>
    </li>
</ul>

我可以验证我的Tag Helper从未被调用,因为我在代码中放置了永不触发的断点。

有人看到我在做什么错吗?

0 个答案:

没有答案