GET*_*Tah 5 c# xml-documentation
我试图在我的类XML文档中包含一个代码片段,但编译器抱怨xml元素没有关闭!这是我想要实现的目标
/// <summary>
/// Method documentation here...
/// </summary>
/// <remarks>
/// <para>
/// This class should be used as follow:
/// <br/>
/// ************** PROBLEM IN NEXT LINE ********************
/// <c> MyClass class = new MyClass<String>(); </c>
/// </para>
/// </remarks>
public class MyClass<T>{
....
}
Run Code Online (Sandbox Code Playgroud)
我试图替换代码片段 /// <c> MyClass class = new MyClass{String}(); </c>
以前有人经历过这个吗?
谢谢你的帮助
在xml文档中,您必须用花括号替换三角形括号:
/// <summary>
/// Calls <see cref="DoSomething{T}"/>.
/// </summary>
public void CallsDoSomething()
{
}
public void DoSomething<T>()
{
}
Run Code Online (Sandbox Code Playgroud)
你最终被迫这样做的原因,因为如果你允许在元素标记之外使用三角括号,它真的不是很好的形成xml.
你试过的替换是正确的.
你没有关闭Remarks第4行中的元素,它可能会抱怨,只是在错误的行号.
此外,对于包含泛型的示例,它会List<string>以文本文字List后跟未闭合的stringXML元素.解决这个问题的最简单方法是List &lt;string&gr;在解析时生成List<string>而不是XML元素.
C#编译器团队添加了{它}作为替换,所以你可以这样做List{string},它将被处理成<>的.