在派生 class 中更改 xml 对 属性 的描述
Change xml description of property in derived class
有没有办法在不重写 getter 和 setter 声明的情况下更改派生 class 中 属性 的 xml 描述?
例子:
public abstract class BaseClass
{
/// <summary>
/// description of foo in BaseClass
/// </summary>
public int foo
{
get { /* do something */ }
set { /* do something */ }
}
}
public sealed class DerivedClass: BaseClass
{
/// <summary>
/// description of foo in DerivedClass
/// </summary>
public int foo
{
get { /* do something */ }
set { /* do something */ }
}
}
foo
的实现在两个 class 中应该相同,只是描述发生了变化。
基本上没有。不过,您不需要添加新的实现 - 您只需使用:
/// <summary>
/// description of foo in DerivedClass
/// </summary>
public int foo
{
get { return base.foo; }
set { base.foo = value = value; }
}
但是您需要重新声明该方法。这可以通过 virtual
/ override
对,或者可以通过 new
(成员隐藏)成员。
有没有办法在不重写 getter 和 setter 声明的情况下更改派生 class 中 属性 的 xml 描述? 例子:
public abstract class BaseClass
{
/// <summary>
/// description of foo in BaseClass
/// </summary>
public int foo
{
get { /* do something */ }
set { /* do something */ }
}
}
public sealed class DerivedClass: BaseClass
{
/// <summary>
/// description of foo in DerivedClass
/// </summary>
public int foo
{
get { /* do something */ }
set { /* do something */ }
}
}
foo
的实现在两个 class 中应该相同,只是描述发生了变化。
基本上没有。不过,您不需要添加新的实现 - 您只需使用:
/// <summary>
/// description of foo in DerivedClass
/// </summary>
public int foo
{
get { return base.foo; }
set { base.foo = value = value; }
}
但是您需要重新声明该方法。这可以通过 virtual
/ override
对,或者可以通过 new
(成员隐藏)成员。