是否可以对属性和私有变量有一个注释

本文关键字:变量 有一个 注释 属性 是否 | 更新日期: 2023-09-27 17:58:03

大家好,我的问题很简单。

/// <summary>
/// a description here. for internal use
/// </summary>
private A _Owner;
/// <summary>
/// Same description also here. for outside use
/// </summary>
public A Owner
{
    get { return _Owner; }
    set { _Owner = value; }
}

有没有办法避免同一条评论写两次?这真是令人讨厌。

是否可以对属性和私有变量有一个注释

首先,请注意,对于私有成员(包括字段),不需要intellisense注释。因此,您可以删除第一个注释。如果从名称中看不出字段的含义,则说明您没有对其进行适当的命名。

其次,对于大多数简单的属性,您可以完全删除显式字段声明。。。

/// <summary>a description here</summary>
public A Owner {get;set;}

事实并非如此。但是注释属性就足够了,因为私有成员不会显示在类之外。所以只要评论一下你的财产就行了。

如果只是直接查看后备字段,只需使用auto属性即可避免重复。

/// <summary>
/// just use an autoprop
/// </summary>
public A Owner
{
    get;set;
}

使用自动实现的属性,然后可以为该属性指定单个XML注释。

/// <summary>
/// Same description also here. for outside use
/// </summary>
public A Owner
{
get; set;
}

但是,如果您正在对get或set中的私有字段执行某些操作,则必须指定两次XML注释。

还有一件事,您可能只需要为属性指定XML注释,因为它是在类之外公开的,而不是您的公共字段。

不,没有办法避免这种情况,因为intelisense将编写的注释链接到找到的代码工件。在您的情况下,您有2其中:

  • 一个是CCD_ 1
  • 另一个是CCD_ 2

因此,的情况下,您需要编写两次,或者,正如spender建议的那样,使用auto属性并定义一次。