c# - 如何禁用特定文件的特定编译器警告

标签 c# visual-studio-2010 .net-4.0 sandcastle

背景

我正在从事一个小型编码项目,该项目将出售给其他公司。我需要为它创建一些文档,所以我决定使用 SandcaSTLe。在花了很长时间下载和安装之后,我终于让它工作了,并注意到任何没有注释的公共(public)方法或类都有红色文本,说明缺少注释。然后我安装了 Ghostdoc 来帮助加快我的评论速度。这打开了缺少 xml 注释的编译器警告,这很棒,因为我现在有了一个包含我需要注释的所有内容的列表。

问题

我的一个代码文件是一个自动生成的文件,其中包含大约 3000 个编译器警告。我需要能够跳过该文件以创建任何“缺少 Xml 注释”编译器警告。我从this知道这些事情帖子:

  • 我知道我可以关闭项目的编译器警告,但项目中还有其他文件应该有编译器警告。
  • 我知道我可以使用 #pragma warning disable 1591 来删除编译器警告,但文件是自动生成的,我真的不想每次都手动重新添加它。
  • 我知道我可以添加一个空注释,但我真的不想每次重新生成文件时都必须重新添加它。
  • 我可以将文件拉出到它自己的项目中,因为它是其命名空间中的唯一类,然后删除 XML 注释要求,但我不希望客户不得不处理另一个 dll。
  • 这些类是部分类,所以我正在考虑尝试找到一种方法来在部分类中添加 #pragma warning disable,但即使这是可能的,仍然有枚举会引发警告。

我如何告诉 VS 忽略单个文件的特定类型的警告?

最佳答案

我想到了几种可能性:

  1. 你能有另一个导入自动生成的 .cs 文件的类吗?包装类具有 pragma,仅导入自动生成的类。
  2. 编写一个 perl 脚本(或简单的 C# 程序),在生成文件之后和编译 .cs 文件之前将其作为构建事件调用。

关于c# - 如何禁用特定文件的特定编译器警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11444631/

相关文章:

c# - 记录方法或类名总是写Common.Logging方法

c# - HttpClient 设置内容传输编码 header

c# - 从json字符串读取数据到c#对象

c++ - PCL 库基本项目返回 abort 已被调用

asp.net - Crystal Reports 13 和 Asp.Net 3.5

c# - 如何在动态类型上执行字符串路径?

c# - 带通配符的 Active Directory 查询性能不佳

c# - 我不知道为什么我在 temp 的索引 13 处得到 "0"

c++ - 如何在我的 MAC 中用 visual studio 编译一些代码

c# - 如何从表达式中设置嵌套深度级别的值?