Visual Studio 2010中C#中的XML标签 "see "和 "seealso "是什么意思?

问题描述 投票:32回答:4

当你在Visual Studio 2010中工作,并在一个方法上写了一个注释,然后点击enterVisual Studio 2010允许你创建 "see "和 "see also "XML注释。

如果你输入注释 "see",然后按TAB键,那么它看起来就像

/// <see cref=""/>
/// <seealso cref=""/> 

它在C#中的含义是什么?

c# visual-studio-2010
4个回答
33
投票

这两个都是经过编译器验证的XML文档标签。

<see> 是用于直接在文本中放置链接。

<seealso> 是用于将文本放置在 "另见 "部分。

查看它们在以下情况下的使用情况 这个 的例子。


2
投票

根据.NET xml文档标准,See和SeeAlso在生成的文档中变成了对其他类的引用。

请阅读 http:/msdn.microsoft.comen-uslibrary5ast78ax.aspx。 获取更多关于可用标签的信息。

请注意,除此之外,Sandcaslte还支持在子类上,从基类中复制文档。


1
投票

这些元素是用来创建文档的。如果你看MSDN,你会发现在类的描述中,有几个链接提到了其他类型。

编辑请看 http:/www.sandcastledocs.com 作为一个示例应用程序来创建这些帮助文件。


0
投票

经过这么多时间,我很惊讶没有人回答最重要的部分。

微软的标准文档系统,是由特殊的注释助推的,根据语言的不同,标记为/或''''或---等。

默认情况下,系统只供给intellisense。在编译过程中从这些特殊注释和其中的任何支持的标记创建的XML输出可以作为其他系统的输入,如SandCastle和DocFX,但您必须安装这些工具并配置它们以从中受益。 如果你使用这类工具,这两个标签之间的差异是由工具或许你如何配置它决定的,而不是由微软决定的。 因此,请阅读相关工具的文档,了解是否对这些标签进行了不同的处理,如果是,以何种方式处理。

说到这里,如果您没有使用外部工具,您可能看不到使用这两个标签的意义,因为没有明显的理由这样做,如果您选择使用一个或另一个,它们之间没有明显的区别。

事实上,从intellisense的角度来看,它们之间目前没有区别。 然而,有一个非常好的理由使用它们中的一个,即使你不使用读取XML输出的工具。 这个理由是 回炉!

通过标记一个标识符(用 see 或 seealso),而不是只输入它的名称作为文字,Visual Studio 的重构工具被告知该标签是一个合法的标识符。 这将导致对标识符的任何重命名都会包含标签内容。 这比起标识符重命名时为了保持文档与源代码同步而必须进行的经常是模棱两可的字符串搜索有很大的优势。

在某种程度上,它的功能与 nameof() 操作符类似,后者在构建字符串时很有用。 不同的是,它在任何特别标记的comment中工作,而不是在代码中工作。

© www.soinside.com 2019 - 2024. All rights reserved.