Krz*_*zyk 4 c# visual-studio roslyn-code-analysis
目前我的项目中的大多数警告都来自自动生成的代码。在大多数情况下,它是(CA1062:验证公共方法的参数)。我注意到,即使是 Visual Studio 生成的控制台 hello word 应用程序也会显示警告(S1118:实用程序类不应具有公共构造函数)。
如何禁用自动生成代码的警告?(主要是迁移)
// <auto-generated/>正如 crgolden 所说,您可以在文件开头添加标签。但我会谨慎对待生成器工具选择不添加它的文件。您特别提到了迁移 - 您应该在提交之前检查它们,EF 有时会做出令人惊讶的事情 (*)。该审查也是修复任何困扰您的警告的好时机。如果您非常关心警告并使其保持启用状态,那么在迁移中将其静音会树立一个不好的先例。如果你不关心它,你可以全局禁用它。
我对自动生成的注释的看法是,它属于在您的控制之外或频繁或两者兼而有之的情况下重新生成的文件。由于我们使用 EF 作为示例,因此 ModelSnapshot 是一个很好的候选者,并且迁移工具确实包含它。<Migration>.Designer.cs 文件也会随之生成。而且它几乎不应该手动添加 (**)
(*) 删除一列并添加另一列,如果它们具有相似的类型,您可能会发现具有重命名操作的迁移。或者您的同事对代码做了一些更改,但忘记为其生成迁移 - 您的迁移现在将包括两者的更改,而他的部分将未经测试。
(**) 由于每个规则都需要一个例外,最近我正在考虑为我们作为源文件导入到项目中的第三方库打破此规则。最后我决定将整个项目设置为警告级别 0。
| 归档时间: |
|
| 查看次数: |
956 次 |
| 最近记录: |