c# - 我们可以在 razor 页面中使用 addTagHelper 吗?
问题描述
在 ASP.NET CORE 3.1 MVC 项目中,我在
Views > _ViewImports.cshtml
标记现在在该文件夹中的所有视图中都可以正常工作。
我还搭建了AspNetCore.Identity
页面,所以在我的项目中我也有
Areas > Identity > Pages > _ViewImports.cshtml
然后是一大堆 Razor 页面
Areas > Identity > Pages > Account > ...
现在,无论我添加TagHelper
到_ViewImports.cshtml
什至直接添加到任何 Razor 页面,标记都不起作用。
TagHelpersRazor
中的页面是否Areas
无法正常工作?我可以以这种方式添加TagHelpers
到.cshtml
页面还是仅适用于.cshtml
Views 文件夹中的页面?
解决方案
如果addTagHelper
在页面中添加指令,则Areas > Identity > Pages > _ViewImports.cshtml
只有身份剃须刀页面可以使用自定义标签助手。Views 文件夹中的视图页面不能使用自定义标签助手。
要使Views
文件夹的页面使用自定义标签助手,我们应该在页面中添加addTagHelper
指令。Views > _ViewImports.cshtml
要使 Views 文件夹的页面和 Identity razor 页面使用自定义标签助手,我们需要在和中添加addTagHelper
指令。Areas > Identity > Pages > _ViewImports.cshtml
Views > _ViewImports.cshtml
此外,正如 AntonKovachev 所说,当我们添加addTagHelper
指令时,我们应该使用项目名称。例如,我的项目名称是“netcore3”,我在 Taghelpers 文件夹中创建了一个 MyCustomTagHelper,那么,addTagHelper
指令应该是这样的(您可以将项目名称或文件路径更改为您的):
@addTagHelper *, netcore3
或者
@addTagHelper netcore3.TagHelpers.MyCustomTagHelper, netcore3
检查以下屏幕截图(登录和注册页面是 Identity razor 页面,Index 页面是 View 页面。):
推荐阅读
- mysql-8.0 - MYSQL 批量插入 - Linux
- android - 找不到类“androidx.core.content.FileProvider”
- angular - 企业上的 Ag-grid CSS 问题
- html - 如果可以的话,我想让我的弹性盒子进入 2 x 2 网格帮助
- java - Java:依赖项目中的spring-boot-starter-data-jpa依赖项
- c# - 使用 Razor 页面绑定对象列表
- c# - 使用日历邀请和 html 发送电子邮件无法正确显示
- .net - 在 Visual Studio 中,“目标框架”和高级构建设置“语言版本”有什么区别?
- javascript - 如何在 JavaScript 中调用原型之外的函数?
- python-3.x - 如何从 Python 中的文本解析“5 月 17 日至 7 月 18 日”时间段?