加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-core – 在区域视图中使用TagHelpers

发布时间:2020-12-16 03:59:53 所属栏目:asp.Net 来源:网络整理
导读:我花了最后一小时重构使用区域,现在我的所有视图似乎都没有函数标记:/ 所以这就是Index.cshtml中的内容 div class="btn-group" a asp-controller="Survey" asp-area="Admin" asp-action="Create" class="btn btn-primary"Create New/a /div …这是呈现的HTM
我花了最后一小时重构使用区域,现在我的所有视图似乎都没有函数标记:/

所以这就是Index.cshtml中的内容

<div class="btn-group">
           <a asp-controller="Survey" asp-area="Admin" asp-action="Create" class="btn btn-primary">Create New</a>
       </div>

…这是呈现的HTML:/

<div class="btn-group">
  <a asp-controller="Survey" asp-area="Admin" asp-action="Create" class="btn btn-primary">Create New</a>
</div>

Intellisense甚至不显示asp-前缀,并且asp-属性上的语法突出显示也会丢失.

其他SO问题引用了“asp-route-area”,但它只是像其他的一样呈现出verbtim.

这些都在?/ Views / Name / Index.cshtml中工作正常,将它们移到?/ Areas / Name / Views / Name /和nopers ……

有什么想法吗?
史蒂夫

解决方法

根据官方 docs:

The @addTagHelper directive makes Tag Helpers available to the view.
In this case,the view file is Views/_ViewImports.cshtml,which by
default is inherited by all view files in the Views folder and
sub-directories; making Tag Helpers available. The code above uses the
wildcard syntax (“*”) to specify that all Tag Helpers in the specified
assembly (Microsoft.AspNetCore.Mvc.TagHelpers) will be available to
every view file in the Views directory or sub-directory.

如果每个区域使用一个布局,要使用内置标记助手,您应该在?/ Areas / Name / Views /文件夹中添加_ViewImports.cshtml(如果使用共享布局,则不需要.有关共享布局示例,请参阅MusicStore project) .

我猜你每个区域使用一个布局而你没有添加_ViewImports.cshtml~ / Areas / Name / Views /.将/Views/_ViewImports.cshtml复制到?/ Areas / Name / Views /.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读