Answers:
5个选项:
#pragma warning disable 1591
仅对某些代码位(及#pragma warning restore 1591
之后)禁用警告向公开可见的类型和成员添加XML注释:)
///<Summary>
/// Gets the answer
///</Summary>
public int MyMethod()
{
return 42;
}
您需要<summary>
所有成员都具有这些类型的注释-这些注释也会显示在“智能感知”弹出菜单中。
收到此警告的原因是因为您已将项目设置为输出文档xml文件(在项目设置中)。这对于类库(.dll程序集)很有用,这意味着.dll的用户可以在Visual Studio中直接获取API的智能文档。
GhostDoc
-我见过的最愚蠢的插件。它生成文档。现在暂停片刻考虑一下。您希望代码更易于理解,因此您使用一种仅根据方法名称和参数类型生成文档的工具。这对您有意义吗?用户可以看到参数的名称和类型,并添加注释DateTime date
- 日期确实无济于事。
禁止显示XML注释警告
(不是我的工作,但是我发现它很有用,所以我加入了文章和链接)
http://bernhardelbl.wordpress.com/2009/02/23/suppress-warnings-for-xml-comments/
在这里,我将向您展示如何在Visual Studio构建之后抑制XML注释的警告。
背景
如果您已在Visual Studio项目设置中选中“ XML文档文件”标记,则会创建一个包含所有XML注释的XML文件。另外,由于缺少或错误的XML注释,在设计器生成的文件中也会收到很多警告。虽然有时警告可以帮助我们改善和稳定代码,但获得数百个XML注释警告只是一个痛苦。警告事项
缺少公开类型或成员的 XML注释…的 XML注释…带有参数“…”,但没有该名称的参数参数……的XML注释中没有匹配的参数…“(但其他参数)解决方案
您可以在Visual Studio中禁止显示所有警告。
右键单击Visual Studio项目/属性/生成选项卡
在“禁止警告”中插入以下警告编号:1591,1572,1571,1573,1587,1570
#pragma warning disable
任何地方,这很烦人。
插入XML注释。;-)
/// <summary>
/// Describe your member here.
/// </summary>
public string Something
{
get;
set;
}
乍一看,这可能看起来像个玩笑,但实际上可能有用。对我来说,思考甚至私有方法都可以使用的方法很有帮助(当然,除非真的很琐碎)。
这是因为在您的项目属性中指定了XML文档文件,并且您的方法/类是公共的,并且缺少文档。
您可以:
右键单击项目->属性->“构建”选项卡->取消选中XML文档文件。
XML文档的摘要如下所示:
/// <summary>
/// Description of the class/method/variable
/// </summary>
..declaration goes here..
我知道这是一个非常旧的线程,但这是google上的第一个响应,因此我想添加以下信息:
仅在“项目属性”->“构建”下将警告级别设置为4时,才会发生此行为。 。除非您真的需要那么多信息,否则可以将其设置为3,这样您将摆脱这些警告。当然,更改警告级别不仅会影响注释,因此,如果不确定不确定会丢失什么,请参考文档:https :
//msdn.microsoft.com/zh-cn/library/thxezb7y.aspx
在您的解决方案中,一旦选中了生成XML文档文件的选项,它将开始检查您的公共成员是否具有XMLDoc,如果没有,则每个元素都会收到警告。如果您确实不想发布DLL,并且也不需要文档,则转到解决方案,构建部分,然后将其关闭,否则,如果需要,请填充它们,如果不重要属性和字段,只需使用预编译器说明超越它们,
#pragma warning disable 1591
您还可以恢复警告:
#pragma warning restore 1591
编译指示用法:在代码中您得到编译器警告的位置之前的任何位置(对于文件,请将其放在标头中,并且您无需再次启用它,单个类环绕类或方法环绕)一个方法,或者...您不需要包装它,可以随意调用并还原它(从文件开头开始,在方法内部结束),编写以下代码:
#pragma warning disable 1591
如果需要还原它,请使用:
#pragma warning restore 1591
这里是一个例子:
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using MongoDB.Bson;
using MongoDB.Bson.Serialization.Attributes;
using RealEstate.Entity.Models.Base;
namespace RealEstate.Models.Base
{
public class CityVM
{
#pragma warning disable 1591
[Required]
public string Id { get; set; }
[Required]
public string Name { get; set; }
public List<LanguageBasedName> LanguageBasedNames { get; set; }
[Required]
public string CountryId { get; set; }
#pragma warning restore 1591
/// <summary>
/// Some countries do not have neither a State, nor a Province
/// </summary>
public string StateOrProvinceId { get; set; }
}
}
请注意,pragma指令从行首开始
文件 > 编辑 > 查看项目(单击)
下拉弓的底部(单击“ 打开/当前工作” >“ 属性”),在“输出”下的“构建”中打开项目属性页。“取消选中” XML文档复选框。
重建,没有警告。
您需要为显示警告的成员添加///。
见下面的代码
public EventLogger()
{
LogFile = string.Format("{0}{1}", LogFilePath, FileName);
}
对于公开可见的类型或成员'.EventLogger()',它显示警告缺少XML注释。
我为成员添加了评论,并且警告消失了。
///<Summary>
/// To write a log <Anycomment as per your code>
///</Summary>
public EventLogger()
{
LogFile = string.Format("{0}{1}", LogFilePath, FileName);
}