可为空类型的文档生成

时间:2013-06-13 10:35:59

标签: c# xml

有一个关于C#编译器生成文档的问题。

源代码:

public class SomeClass {
    /// <summary>
    /// Do some work
    /// </summary>
    /// <returns cref="Nullable{Boolean}">
    /// Some stuff
    /// </returns>
    public bool? SomeMethod() {
       return false;
    }
}

编译器为方法SomeMethod生成XML文档片段:

<member name="...." >
 ....
  <returns cref="T:System.Nullable`1">SomeStuff</returns>
</member>

有没有办法强制它产生

<member name="...." >
 ....
  <returns cref="T:System.Nullable{System.Boolean}">SomeStuff</returns>
</member>

代替。?

3 个答案:

答案 0 :(得分:2)

不幸的是没有。

无法更改.xml文件的生成方式。

相反,您必须更改处理这些文件以处理该语法的任何内容,或更改XML文档。

这里的问题是Nullable{Boolean}Nullable{T}没有区别,因为括号之间的部分不是理解为类型,而是作为泛型类型参数。 TBooleanXYZ,这都是一回事。

您将不得不更改读取此内容的工具(我不知道您将如何做到这一点),或以不同方式写出您的参考文献:

/// <returns>
/// <see cref="Nullable{T}/> with <c>T</c> being <see cref="Boolean"/>.
/// </returns>

答案 1 :(得分:1)

如何使用

Nullable<bool>

答案 2 :(得分:0)

我使用这种语法:

int

这意味着类型参考不是100%准确,但文档工具提示预览的突出显示与签名预览的外观相同(有色?,无色{{ 1}})。