我有一个超过500个缺少XML注释警告的项目。我知道我可以删除XML注释特性,或者将空注释片段粘贴到任何地方,但是我更喜欢一种通用的解决方案,即只做一个更改就可以禁用所有此类警告。

我刚才做的是放

///<Summary>
/// 
///</Summary>

or

#pragma warning disable 1591

我只是好奇有没有可能。


当前回答

进入项目属性,取消选中生成XML文档选项。

重新编译,警告就会消失。

其他回答

这本来是一个评论,但我不能让它符合限制:

我希望只在Reference.cs和WebService导入时禁用它们。实际上,我用宏来处理文件。只需打开文件并执行这个宏(在VS2010中测试):

Sub PragmaWarningDisableForOpenFile()
    DTE.ActiveDocument.Selection.StartOfDocument()
    DTE.ActiveDocument.Selection.NewLine()
    DTE.ActiveDocument.Selection.LineUp()
    DTE.ActiveDocument.Selection.Insert("#pragma warning disable 1591")
    DTE.ActiveDocument.Selection.EndOfDocument()
    DTE.ActiveDocument.Selection.NewLine()
    DTE.ActiveDocument.Selection.Insert("#pragma warning restore 1591")
    DTE.ActiveDocument.Save()
End Sub

真的没有办法自动做到吗?每次自动生成的代码覆盖该文件时,您都必须重新执行此操作。

进入项目属性,取消选中生成XML文档选项。

重新编译,警告就会消失。

您可以使用.editorconfig文件在每个文件的基础上选择性地禁用此功能-例如,如果您有一个特定的源文件(或多个文件),您可以使用如下内容:

# single file
[IgnoreThisFile.cs]
dotnet_diagnostic.CS1591.severity = none

# multiple files, matching on specific naming convention
[*{Type,Stuff,Things}.cs]
dotnet_diagnostic.CS1591.severity = none

请注意,我在持续管理此警告方面有复杂的经验,但在VS2022的当前版本(17.4.4+)中,它似乎仍然存在。确保.editorconfig在文件夹结构中处于足够“高”的级别,以便适用于所有源文件(或者,根据需要在特定的文件夹级别上使用多个文件)。

Visual Studio 2022:

我建议使用Visual Studio中的.editorconfig文件在所有解决方案中设置一个通用的代码风格。

在这种情况下,只需手动将以下代码添加到.editorconfig文件:

# SA0001: XML comment analysis is disabled due to project configuration
dotnet_diagnostic.SA0001.severity = none

注意:对我来说,从编辑器配置设计器中抑制SA0001不起作用。

文件中只能手动设置规则。

您还可以修改项目的.csproj文件,在第一个<PropertyGroup>中包含一个<noWarn>1591</noWarn>标记。 原选自Alexandru Bucur的文章

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    ...
    <NoWarn>1591</NoWarn>
  </PropertyGroup>
  ...
</Project>