在 C# XML 注释中,如何引用另一个方法的参数?
In C# XML comments, how can I refer a parameter of another method?
在 MethodB XML 文档中,我想写一些像
/// <remarks>Before calling this method, call <see cref="MethodA"> passing zero as <paramef name="MethodA.MyParam"/> value.
MethodA 声明为
void MethodA(int MyParam)
可能吗?目前,我必须这样写:
/// <remarks>Before calling this method, call <see cref="MethodA"> passing zero as <i>MyParam<i/> value.
当然,这会导致潜在的错误,因为如果我在代码中输入错误或更改名称,编译器不再警告我参数名称错误。
你不能。
但是,您可以声明一个类似于 IsReady
的 public 属性 并在正确调用 MethodA
时将其设置为 true。
MethodB
应该检查 属性 并在其值为 false 时抛出 InvalidOperationException
。然后将此 XML 评论添加到 MethodB
:
/// <exception cref="InvalidOperationException">
/// <see cref="IsReady" /> is <c>false<c>.
/// </exception>
这样你的实例的状态是 public 可用的,所以调用者不需要事先知道 MethodA
是否使用正确的参数调用,它可以只检查 MethodA
是否=11=]是真的。
在我看来,传递什么参数会使实例 "ready" 应该在 MethodA
自己的文档中,而不是在 MethodB
中。
在 MethodB XML 文档中,我想写一些像
/// <remarks>Before calling this method, call <see cref="MethodA"> passing zero as <paramef name="MethodA.MyParam"/> value.
MethodA 声明为
void MethodA(int MyParam)
可能吗?目前,我必须这样写:
/// <remarks>Before calling this method, call <see cref="MethodA"> passing zero as <i>MyParam<i/> value.
当然,这会导致潜在的错误,因为如果我在代码中输入错误或更改名称,编译器不再警告我参数名称错误。
你不能。
但是,您可以声明一个类似于 IsReady
的 public 属性 并在正确调用 MethodA
时将其设置为 true。
MethodB
应该检查 属性 并在其值为 false 时抛出 InvalidOperationException
。然后将此 XML 评论添加到 MethodB
:
/// <exception cref="InvalidOperationException">
/// <see cref="IsReady" /> is <c>false<c>.
/// </exception>
这样你的实例的状态是 public 可用的,所以调用者不需要事先知道 MethodA
是否使用正确的参数调用,它可以只检查 MethodA
是否=11=]是真的。
在我看来,传递什么参数会使实例 "ready" 应该在 MethodA
自己的文档中,而不是在 MethodB
中。