Jos*_*rty 25 c# analyzer visual-studio roslyn visual-studio-2015
我正在尝试使用一个拥有少量Roslyn Code Analyzers的大型开源项目.当我打开解决方案时,Visual Studio使用~35%的CPU大约15分钟.使用PerfView我发现在解决方案上运行的代码分析器正在使Visual Studio陷入困境.
我知道可以在每个项目的基础上禁用分析器,但是这个解决方案包含100多个项目,所以我不想一个接一个地执行此操作.
我的问题:
Ama*_*rek 19
您可以基于每个项目禁用分析器.
要做到这一点,右键单击项目>参考>分析仪在Solution Explorer中,打开放活动规则集
您可以禁用单个分析仪或整个分析仪包.
这会创建一个<ProjectName>.ruleset文件并对其进行修改<ProjectName>.csproj,这意味着您将与团队共享此配置,除非您从源代码管理中排除这些更改.
注意:关闭并重新打开解决方案后将应用更改.
改变.csproj:
<Project ...>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<CodeAnalysisRuleSet>Example.ruleset</CodeAnalysisRuleSet>
Run Code Online (Sandbox Code Playgroud)
Example.ruleset 文件:
<?xml version="1.0" encoding="utf-8"?>
<RuleSet Name="Rules for WpfApplication1" Description="Code analysis rules for WpfApplication1.csproj." ToolsVersion="14.0">
<Rules AnalyzerId="Microsoft.CodeAnalysis.CSharp" RuleNamespace="Microsoft.CodeAnalysis.CSharp">
<Rule Id="AD0001" Action="None" />
<Rule Id="CS0028" Action="None" />
...
Run Code Online (Sandbox Code Playgroud)
小智 8
在工具/选项/文本编辑器/C#/高级中禁用以下设置,并在分析组下禁用使用64 位进程进行代码分析。它在 vs2019 中进行了测试。
尝试Tools/Options/Text Editor/C#/Advanced并禁用完整的解决方案分析 它仅在VS2015 Update 2之后可用.
可以引用位于父文件夹中的规则集文件
<Project ...>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<CodeAnalysisRuleSet>..\Example.ruleset</CodeAnalysisRuleSet>
Run Code Online (Sandbox Code Playgroud)
这样您就可以为整个解决方案定义一个规则集。
在您的 csproj 或 Directory.Build.props 文件中尝试以下组合
<RunAnalyzersDuringBuild>false</RunAnalyzersDuringBuild>
<RunAnalyzersDuringLiveAnalysis>false</RunAnalyzersDuringLiveAnalysis>
<RunAnalyzers>false</RunAnalyzers>
Run Code Online (Sandbox Code Playgroud)
您可以将.editorconfig文件放置到想要关闭所有 .NET 分析器警告的文件夹(及其子文件夹)中:
root = true
[*.cs]
# Disable all .NET analyzers
dotnet_analyzer_diagnostic.severity = none
dotnet_diagnostic.severity = none
Run Code Online (Sandbox Code Playgroud)
如果代码库中有外部库副本并且不想修改其源代码,则这非常有用。
小智 5
在 Visual Studio 2022 中,我已解决并禁用这两项检查:
在罗斯林吃了很多公羊之前,视觉工作室工作得很好。
| 归档时间: |
|
| 查看次数: |
22979 次 |
| 最近记录: |