分析器的 .NET Standard 项目文件格式

.NET Standard Project File Format for Analyzers

我目前无法访问 NuGet,我需要将 Roslyn 分析器 (StyleCop) 添加到新的 .NET Standard class 库项目中。我需要进行哪些手动文件编辑(project.csproj、package.config)?我已经通过在 .NET Framework class 库中安装它下载了 StyleCop nuget 包。

查看安装了 StyleCop 的现有 .NET Standard class 库项目。这是项目文件的相关部分:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netstandard1.4</TargetFramework>
    ...
  </PropertyGroup>

  ...

  <ItemGroup>
    <AdditionalFiles Include="stylecop.json" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="StyleCop.Analyzers" Version="1.1.118">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
    </PackageReference>
  </ItemGroup>

  ...

</Project>

如果您的 NuGet 缓存中已经有 StyleCop 包,您在答案中发布的内容将起作用,并且如果您在访问 NuGet.org.

时清除缓存,它将起作用。

但是如果您有一个分析器库不在您要使用的 NuGet 包中,您可以显式添加分析器:

<ItemGroup>
  <Analyzer Include="<path to analyzer dll" />
</ItemGroup>