ASP.NET Visual Studio 2017 年的核心标签助手 Intellisense

ASP.NET Core Tag Helper Intellisense in Visual Studio 2017

我无法获得所有标签的 Intellisense(例如 asp-for asp-action 等)我是 运行 Visual Studio 2017。

我的 .csproj 文件包括以下包:

<PackageReference Include="Microsoft.AspNetCore" Version="1.1.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.1" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.TagHelpers" Version="1.1.1" />
<PackageReference Include="Microsoft.AspNetCore.Razor.Tools" Version="1.1.0-preview4-final" Type=""/>
<PackageReference Include="Microsoft.AspNetCore.Razor" Version="1.1.0" />
<PackageReference Include="Microsoft.AspNetCore.Razor.Runtime" Version="1.1.0" />

我的 _ViewImports.cshtml 文件包括以下内容:

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

我需要编辑或添加什么吗?

编辑 1:

根据 VS2017 已知问题中的建议,解决方法现已可用。为此,我们需要安装 Razor Language Service 扩展。此扩展在 Visual Studio 2017 年为 ASP.NET Core Razor Tag Helpers 提供支持。


原文:

VS2017 RC 中,Razor Tag Helpers 在设计时不会获得着色或特殊的 IntelliSense。它们在运行时正常工作。目前没有可用的解决方法。

参考known-issues-vs2017了解更多详情。

对于 VS2017 RTM(如果您现在已经升级),您需要从 安装 Razor 语言服务扩展和更新... 工具 菜单中 Visual Studio.

警告:似乎您还必须从您的 中删除任何 Microsoft.AspNetCore.Razor.Tools 参考(我有版本 1.1.0-preview4-final) .csproj 文件以在安装上述扩展后启用 IntelliSense。

[已解决] 在我更新的 Visual Studio 2017 Enterprise 26430.13 中,我通过禁用并重新启用 Razor Language Services 解决了我的问题,它现在可以正常工作了。

我知道这有点奇怪。我在 Tools 菜单的 Extension and Update 中找到 Razor Language ServicesDisable 它并重新启动 Visual Studio 并再次启用它并再次重新启动 Visual Studio 最后一切正常.

您可以通过执行以下过程add/use 标签助手:

  1. 创建名为 _ViewImports.cshtml
  2. 的视图
  3. 在其中添加以下行, @addTagHelper "*,Microsoft.AspNetCore.Mvc.TagHelpers"
  4. 完成

去检查_Layout.cshtml,它会工作正常。