Visual Studio 允许你控制源代码分析器在生成时和设计时是否运行。 可以禁用的功能有一些限制,关闭代码分析的过程因以下几个因素而异:
项目类型(.NET Core、.NET Standard 和 .NET 5+ 与 .NET Framework)
.NET Core、.NET Standard 和 .NET 5+ 项目在其 代码分析 属性页上具有选项,可用于从作为 NuGet 包安装的分析器中关闭代码分析。 有关详细信息,请参阅 .NET Core、.NET Standard 和 .NET 5+ 项目。 相比之下,.NET Framework 项目要求在项目文件中设置属性。 若要关闭 .NET Framework 项目的源代码分析,请参阅 .NET Framework 项目。
源分析与传统分析
本文适用于源代码分析,不适用于旧版(二进制)分析。 有关禁用旧分析的信息,请参阅 为托管代码启用和禁用二进制代码分析。
.NET Core、.NET Standard 和 .NET 5+ 项目
Visual Studio 2022 版本 17.0.4 及更高版本的代码分析属性页面中提供了两个复选框,用于控制分析器在生成时和设计时是否运行。 若要在项目中禁用代码分析,请执行以下步骤:
右键单击 解决方案资源管理器 中的项目节点,然后选择“ 属性”。
选择“Code Analysis”。
此时会打开 “代码分析 属性”页。
若要在生成时禁用源分析,请在 “生成时运行”下,清除 “始终在生成时运行代码分析”。
若要禁用实时源分析,请在“ 实时分析上运行”下,在 编辑器中键入时清除“运行代码分析”。
注释
从 Visual Studio 2022 版本 17.0.4 开始,如果你更喜欢按需代码分析执行工作流,则可以在实时分析期间禁用分析器执行。 或者,您可以在项目或解决方案上按需生成并手动触发代码分析。 有关手动运行代码分析的信息,请参阅 针对 .NET 手动运行代码分析。
.NET Framework 项目
若要关闭分析器的源代码分析,请将以下一个或多个 MSBuild 属性添加到 项目文件。
MSBuild 属性 | DESCRIPTION | 违约 |
---|---|---|
RunAnalyzersDuringBuild |
控制分析器是否在构建时运行。 | true |
RunAnalyzersDuringLiveAnalysis |
控制分析器是否在设计时实时分析代码。 | true |
RunAnalyzers |
将此属性设置为 false 在生成和设计时禁用分析器。 它优先于 RunAnalyzersDuringBuild 和 RunAnalyzersDuringLiveAnalysis 。 |
true |
例如:
<RunAnalyzersDuringBuild>false</RunAnalyzersDuringBuild>
<RunAnalyzersDuringLiveAnalysis>false</RunAnalyzersDuringLiveAnalysis>
<RunAnalyzers>false</RunAnalyzers>
通过此页面,你可以在 Visual Studio 中禁用代码分析。 可以禁用的功能有一些限制,关闭代码分析的过程因以下几个因素而异:
项目类型(.NET Core、.NET Standard 和 .NET 5+ 与 .NET Framework)
.NET Core、.NET Standard 和 .NET 5+ 项目在其代码分析属性页上具有选项,可用于从作为 NuGet 包安装的分析器中关闭代码分析。 有关详细信息,请参阅 .NET Core、.NET Standard 和 .NET 5+ 项目。 有关如何在 .NET Framework 项目中关闭源代码分析的信息,请参阅 .NET Framework 项目。
源分析与遗留分析
本文适用于源代码分析,不适用于旧版(二进制)分析。 有关禁用旧分析的信息,请参阅 为托管代码启用和禁用二进制代码分析。
.NET Core、.NET Standard 和 .NET 5+ 项目
Visual Studio 2019 版本 16.3 及更高版本在 代码分析 属性页中提供了两个复选框,用于控制分析器在生成时和设计时是否运行。 这些选项特定于项目。
若要打开此页面,请在 解决方案资源管理器 中右键单击项目节点,然后选择“ 属性”。 选择“ 代码分析 ”选项卡。
- 若要在生成时禁用源分析,请清除 “在生成时运行” 选项。
- 若要禁用实时源分析,请清除 “在实时分析上运行” 选项。
注释
从 Visual Studio 2019 版本 16.5 开始,如果你更喜欢按需代码分析执行工作流,则可以在实时分析期间禁用分析器执行。 或者,可以在项目或解决方案上构建代码,然后按需手动触发代码分析。 有关手动运行代码分析的信息,请参阅 针对 .NET 手动运行代码分析。
.NET Framework 项目
若要关闭分析器的源代码分析,请将以下一个或多个 MSBuild 属性添加到 项目文件。
MSBuild 属性 | DESCRIPTION | 违约 |
---|---|---|
RunAnalyzersDuringBuild |
控制分析器是否在构建时运行。 | true |
RunAnalyzersDuringLiveAnalysis |
控制分析器是否在设计时实时分析代码。 | true |
RunAnalyzers |
将此属性设置为 false 在生成和设计时禁用分析器。 它优先于 RunAnalyzersDuringBuild 和 RunAnalyzersDuringLiveAnalysis 。 |
true |
例如:
<RunAnalyzersDuringBuild>false</RunAnalyzersDuringBuild>
<RunAnalyzersDuringLiveAnalysis>false</RunAnalyzersDuringLiveAnalysis>
<RunAnalyzers>false</RunAnalyzers>