如何将自定义代码分析器添加到没有 nuget 或 VSIX 的项目?

问题描述 投票:0回答:2

我想在 Visual Studio 2015 中为 C# ConsoleApplication 编写自定义代码分析器。因此,我不想从模板创建单独的“带有代码修复的分析器”项目,因为这需要将此分析器作为 nuget 包添加到我的项目中。


是否可以手动添加分析器参考?我想参考没有 nuget 的分析器。

c# visual-studio-2015 roslyn analyzer
2个回答
13
投票

如果您将分析器添加为 Nuget 并检查项目的内容,您将看到仅添加了一个

<Analyzer Include="..." />
项。您可以手动执行相同的操作。此外,您也可以在
.csproj.user
文件中执行此操作,因此您也可以在本地执行此操作,而不是将此更改提交到 SCM。


10
投票

您可以通过项目引用添加分析器,并将

OutputItemType
设置为
Analyzer
:

<ItemGroup>
  <ProjectReference Include="..\Analyzers\Analyzers.csproj">
     <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
     <OutputItemType>Analyzer</OutputItemType>
   </ProjectReference>
</ItemGroup>

或者通过元素属性:

<ItemGroup>
    <ProjectReference Include="..\Analyzers\Analyzers.csproj"
        ReferenceOutputAssembly="false" 
        OutputItemType="Analyzer"/>
</ItemGroup>
© www.soinside.com 2019 - 2024. All rights reserved.