C#中XML注释的用途是什么
C#中的XML注释比信号线和多行注释有什么用处。
i.Single line Eg: //This is a Single line comment ii. Multiple line (/* */) Eg: /*This is a multiple line comment We are in line 2 Last line of comment*/ iii. XML Comments (///). Eg: /// summary; /// Set error message for multilingual language. /// summary
从XML文档注释(C#编程指南):
使用/ doc选项进行编译时,编译器将在源代码中搜索所有XML标记并创建XML文档文件。
Visual Studio for IntelliSense使用的XML注释:
/// /// This class performs an important function. /// public class MyClass{}
当您键入代码或将光标hover在具有xml注释的成员上时,会给您提供很好的提示:
注意:通常您应该只向公开可见的类型或成员添加xml注释。 如果成员是内部成员或私人成员,那么这很好,但不是必需的。 有一个很好的工具GhostDoc (可用作Visual Studio的扩展),它可以从类型或成员名称生成XML注释。 很高兴检查你是否有良好的命名 – 如果生成的评论不清楚,那么你应该改进成员的名字。
我还建议尽可能少地使用简单(非xml)注释。 因为注释是代码重复的一种forms – 它会复制代码中已有的信息。 这有两个问题:
- 您的代码不够清晰,您应该改进它(重命名,提取类或成员)而不是添加注释
- 代码更改时,注释通常保持不变(程序员很懒惰)。 因此,当时间过去,评论变得过时和混乱。
好的评论应该描述为什么你编写代码而不是复制代码正在做什么。
从///开始的XML注释将被IntelliSense选中,当从其他地方查看时,它将以弹出窗口显示。 有一个MSDN页面解释它是如何工作的。
他们也将被许多构建文档文件等的工具选中。
来自MSDN:
使用/ doc选项进行编译时,编译器将在源代码中搜索所有XML标记并创建XML文档文件。 要基于编译器生成的文件创建最终文档,您可以创建自定义工具或使用Sandcastle等工具。
XML注释用于构建可由外部工具读取的API文档。 IntelliSense还会读取这些内容,并在您键入时(在“文档”窗口中)使用内容在辅助工具提示中显示代码的文档。
编译器(可选)提取所有这些注释,并将它们放在程序集旁边的单个独立XML文件中; 这可以解析。
我的想法是拥有像JavaDoc这样的东西。 不幸的是,微软未能提供这样做的主流成熟工具。
当您创建Dll assambly时,Xml注释会为dll的用户提供有关函数或其他内容的一些信息
所有语言的代码通常都允许特殊注释。 然后,这些注释可以由创建代码自动文档的过程进行解析。 许多库都以这种方式记录。
在C#中,这些工具由Microsoft提供,您使用XML注释来声明文档过程应该选择注释 – 如果您有一个设置。 评论也可以通过自动完成获取。
另请参阅doxygen,JavaDoc以了解其他语言的实现。 请参阅相关问题Sandcastle的良好替代方案,以生成MSDN样式的文档
- 在C#.NET中创建安装文件后更改连接字符串
- 如何在Panel移动窗体窗口中创建mousedrag?
- 在NInject中实现OnePerSessionBehavior
- 对PInvoke函数的调用使堆栈失衡。 这可能是因为托管的PInvoke ..(.NET 4)
- 如何知道代码是否在TransactionScope中?
- WPF。 对于多重触发条件,“属性”必须具有非空值
- protobuf-net无法反序列化我的课程
- 在样式的代码背后的BasedOn =“{StaticResource {x:Type TextBox}}”
- Microsoft Open XML SDL 2.0将文档附加到模板文档asp.net c#