从Roslyn代码分析器中解决问题

Can*_*den 4 visual-studio roslyn roslyn-code-analysis

有没有办法解决罗斯林分析仪的问题?我使用即时分析器项目类型.如果用户需要,我想要解决这些问题.它也必须是永久性的.如果我重新打开Visual Studio,仍然必须应用相同的抑制规则.

Jon*_*eet 6

您可以忽略来自Roslyn分析器的警告/错误,其方式与忽略常规C#编译器警告完全相同:


Max*_*xim 5

在Visual Studio 2017中,您可以在项目属性中禁用Roslyn警告(例如IDE0002,IDE0003等):

屏幕截图

您可以根据需要直接编辑csproj文件:

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
    <NoWarn>IDE0002;1701;1702;1705</NoWarn>
  </PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

如您所见,您需要使用IDE前缀(正是Roslyn报告的那样)编写它。您必须为每个构建配置执行此操作。我认为这是对整个项目禁用它的最快,最清晰的方法。

Pragma的工​​作方式可能与VS中的某个错误有所不同(因此我猜以后可以更改)。
例如,#pragma warning disable IDE0002将不显示Roslyn消息,但仍将突出显示代码(显示为灰色)。