当前位置: 首页 > 编程语言 > C#

禁止生成c#代码的警告分享

时间:2023-04-10 11:06:03 C#

禁止生成c#代码的警告我为我的VS项目开启了“将警告视为错误”,这意味着我由于缺少文档而出错(这个Remindersforspecificitemsare好的)。但是,部分代码是由不插入xml文档的自定义工具生成的,因此我不想忽略生成代码中丢失的xml文档,而不是忽略整个项目。我对生成的实际文件没有任何影响,也不能真正在文件中插入任何东西(因为它经常由工具重新生成)所以我正在寻找存在于生成文件之外的东西(生成的类是部分,如果这有帮助)编辑:请参阅说明这不适用于C#4的注释。我不清楚它是否适用于早期版本的编译器。C#4规范非常清楚。第2.5.8.1节指出:#pragmawarningrestore指令将所有或一组给定的#pragmawarningrestore恢复到编译单元开始时有效的状态。请注意,#pragmawarningrestore(无论是针对所有警告还是针对指定警告)如果在外部被禁用,将不会重新启用特定警告。Jeff在博客文章中有一个解决方法——基本上是将自动生成的代码重新处理为构建的一部分。正如汤姆所说,您可以在整个项目中添加“忽略”(构建/抑制警告-输入1591作为警告编号)-但您可以在每个未构建的文件的顶部自行恢复警告:#pragmawarningrestore1591这很丑陋,但它有效(我刚刚测试过)。避免生成代码出现警告或代码分析错误的最佳方法是使用GeneratedCodeAttribute修饰生成的类,并使代码文件以*.generated.cs模式结尾。如果您的代码文件也有标题,您应该有这些标签://--------------------////工具描述////--------------------这不是强制性的,但如果您有代码文件头,这是一个很好的做法。这样FxCop和StyleCop等其他工具将不再分析您的代码。奇怪的是,您的代码生成工具不会使用上述属性来分解您的代码元素。尝试查看该选项是否在工具设置中启用或联系开发团队。编辑:生成的类是否是部分类并且经常进行实际的类名和编号更改?因为如果生成的代码内容没有太大的移动,你能做的就是再创建一个代码文件,然后声明生成的分部类,用GeneratedCodeAttribute来装饰它们。它曾经挽救了我的生命(和我的时间!)。您能做的最好的事情就是在您的项目中抑制包含生成代码的特定警告。您可以在“构建”选项卡上的“项目属性”中执行此操作。这并不理想,但如果不在生成的代码中放置编译指示,这是您可以做的最好的事情。以上就是《C#学习教程:生成C#代码警告》的全部内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。侵权请点击右侧联系管理员删除。如需转载请注明出处: