c# - 在 .NET 标准项目中使用 .NET 分析器启用所有规则
问题描述
我正在使用 Rosyln 将我的项目移动到新的 .NET 分析器,之前我使用的是 nuget 包。我正在尝试执行此处描述的过程: 从 FxCop 分析器迁移到 .NET 分析器
现在我的 csproj 看起来像:
<Project>
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<EnableNETAnalyzers>true</EnableNETAnalyzers>
<AnalysisMode>AllEnabledByDefault</AnalysisMode>
</PropertyGroup>
</Project>
如果TargetFramework
是net5.0
,所有规则都返回一个错误,但是当它设置为netstandard2.0
. 我无法移动,net5.0
因为这个 dll 被.NET 4.8
项目引用。
解决方案
如果添加<AnalysisLevel>5</AnalysisLevel>
到项目文件中,您可以指示不以 .NET 5.0 为目标的项目使用与项目目标默认情况下相同的默认规则net5.0
。
您可以在此处找到有关此的更多信息。
推荐阅读
- css - 连续对齐多个文本框反应原生
- postgresql - 通过 docker-compose 连接 Spring Cloud DataFlow 和 Postgresql-db
- android - `addListenerForSingleValueEvent()` 未在 android firebase 中触发
- firebase - 升级到 firebase admin (8.19.0) 后,--import of database 不允许修改数据库
- python - python Webscrape请求与硒
- c# - WPF。将列表框项模板内的绑定到 ObservableCollection 源。源 PropertyChanged 被忽略
- c# - 从 Windows 通知中获取按钮事件
- java - 为什么以 jar 运行时会出现 java.lang.ClassNotFoundException,但与 IntelliJ IDEA 配合得很好
- excel - 是否有任何excel公式来记录单元格上次更改日期?
- android - Gradle 版本颤振