【问题标题】:Asp.Net core 2.0 MVC anchor tag helper not workingAsp.Net core 2.0 MVC 锚标记助手不起作用
【发布时间】:2018-03-28 17:36:10
【问题描述】:

我正在尝试创建一个演示页面,但无法解决下一个问题,我尝试了我在网上找到的所有内容。 我有一个带有标签助手的锚标签:

<a class="menu-link" asp-area="" asp-controller="Telefon" asp-action="Index">Telefonok</a>

我还添加了一个 _ViewImports.cshtml 并在其中添加了我在网上看到的 @addTagHelper "*, Microsoft.AspNet.Mvc.TagHelpers",但还是报错:当前上下文中不存在名称'addTagHelper'

我做错了什么?!

【问题讨论】:

  • 我同意Mark。在 Views 文件夹中包含 ViewImports.cshtml 文件,但特别提到了 TagHelpers 标记解决了我的问题。我很懒,只是复制了文件。根据您的需要,您可以将其剔除。

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


【解决方案1】:

有两个 _ViewImports.cshtml,您可能需要位于 Views 文件夹中的那个。

在我的项目中,我在 Views/Manage 下还有一个

另外需要的行应该如下:

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

我相信这意味着它将包含命名空间中的所有标记助手。

注意使用 Asterix (*)

【讨论】:

【解决方案2】:

请确保以下事项已到位:

  1. 确保根据您的要求在 Views 目录的根级别或任何视图文件夹内的正确位置/目录中创建 _ViewImports.cshtml。请参阅下面的片段。应该是这样的..

  1. 要在 .NET Core 应用程序中使用标记帮助程序,您需要在 _ViewImports.cshtml 文件中定义指令 '@addTagHelper' 以及程序集名称。这是程序集名称 Microsoft.AspNetCore.Mvc.TagHelpers。所以现在你的文件看起来像这样:

    @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

这里的星号 (*) 表示您希望包含程序集中的所有标签助手。

注意:这很尴尬。我犯的错误非常愚蠢和荒谬,起初让我挠头。所以没有人会做同样的事情,写下程序集名称时要非常小心。注意 Mvc 中的大小写。

Microsoft.AspNetCore.Mvc.TagHelpers => ✔
Microsoft.AspNetCore.MVC.TagHelpers => ❌

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-09
    相关资源
    最近更新 更多