使用<see cref =“”>在XML文档中使用可选且可为空的参数</see>

时间:2014-10-21 12:06:24

标签: c# visual-studio documentation nullable optional-parameters

在为我的程序编写XML文档时,我遇到了记录此方法的问题:

internal void MethodB(int i, DateTime? date = null);

我遇到的问题是date参数的特定值。如您所见,它是可选以及可以为空的。以下是我尝试记录此方法的方法:

/// <summary>
/// This method uses <see cref="MethodB(Int32, System.DateTime)"/> internally
/// todo some stuff.
/// </summary>

具体来说,我收到一条编译器警告,指出无法解析cref的值。

如何修复我的XML文档注释,以便在没有此警告的情况下进行编译?

1 个答案:

答案 0 :(得分:2)

尝试指示System.DateTime参数可以为空:

using System;

/// <summary>
/// This method uses <see cref="MethodB(Int32, DateTime?)"/>
/// internally to do some stuff...
/// </summary>

编辑:随着OP @WiiMaxx后来发现,还有另一种语法:

/// <summary>
/// This method uses <see cref="MethodB(Int32, Nullable{DateTime})"/>
/// internally to do some stuff...
/// </summary>

另请注意,特定于语言的类型int可用作系统类型Int32的替代方法(有些人认为int更可取):

/// <summary>
/// This method uses <see cref="MethodB(int, DateTime?)"/>
/// internally to do some stuff...
/// </summary>

请参阅: int or Int32? Should I care?What's the difference between String and string?

最后,无论XML文档评论是否包含Int32intInt32都会出现在生成的文档中(不是特定于编程语言的)。