在.NET核心项目上启用Microsoft的代码分析
我们的团队使用自定义规则集的代码分析function,如果我们忘记对方法参数执行null检查,则会导致构建失败。
但是,现在我们创建一个新的.NET Core项目时,它看起来并不像Code Analysis这些新项目的function。 “项目属性”区域中没有用户界面,并且按照此处的建议向项目添加自定义规则集只会影响StyleCop Analyzers( SAxxxx
规则)。
有没有办法在.NET Core项目中启用代码分析( CAxxxx
)规则?
更新
显然,正确的方法是安装Microsoft.CodeAnalysis.FxCopAnalyzers NuGet包。 即使在ASP.NET Core项目中,这也很有用,并且根本不需要
标志。
原始答案
我意识到csproj文件中还有另一个标签,它实际上可以启用代码分析。 我的.csproj文件中的
标签现在看起来像这样:
netstandard1.4 ..\MyCompanyCodeAnalysisRules.ruleset true
它的效果很好,至少在普通项目上是这样。 ASP.NET Core项目产生以下错误:
CA0055 : Could not identify platform for 'C:\Source\...\bin\Debug\netcoreapp1.1\....dll'. CA0052 : No targets were selected.