在Visual Studio中自动生成功能文档


89

我想知道是否有一种方法(希望是键盘快捷键)在Visual Studio中创建自动生成功能标头。

例:

Private Function Foo(ByVal param1 As String, ByVal param2 As Integer)

它会自动变成这样……


'---------------------------------- 
'Pre: 
'Post:
'Author: 
'Date: 
'Param1 (String): 
'Param2 (Integer): 
'Summary: 
Private Function Foo(ByVal param1 As String, ByVal param2 As Integer)

1
如果您因在IDE中似乎已中断此功能而进入此页面,则应确保代码可以编译并重试。当您的代码有解析错误时,此功能不起作用。
krowe2

如何在Xamarin中生成待办事项列表?
曼森

Answers:


158

使其成为“三个单一注释标记”

在C#中 ///

默认情况下会弹出:

/// <summary>
/// 
/// </summary>
/// <returns></returns>

这是有关编辑VS模板一些技巧。


7
在VB.NET中,它是三重单引号(如其他答案中所述)
peSHIr

1
那很整齐,不知道那
布伦丹

如果先前的非空白行以“ ///”开头,则“为///生成XML文档注释”将不起作用
Moon Waxing

是否可以对每个方法,属性和变量自动执行此操作?即使代码已经存在?
罗宾·布鲁内尔

提示链接再次修复。诅咒你,单向网!
Michael Paulukonis

48

GhostDoc

右键单击该功能,选择“记录此”,然后

private bool FindTheFoo(int numberOfFoos)

变成

/// <summary>
/// Finds the foo.
/// </summary>
/// <param name="numberOfFoos">The number of foos.</param>
/// <returns></returns>
private bool FindTheFoo(int numberOfFoos)

(是的,它们都是自动生成的)。

它支持C#,VB.NET和C / C ++。默认情况下,它映射到Ctrl+ Shift+ D

请记住:您应该在方法签名之外添加信息。不要仅仅停留在自动生成的文档上。这样的工具的价值在于,它会自动生成可以从方法签名中提取的文档,因此您添加的任何信息都应该是信息。

话虽这么说,我个人更喜欢方法完全是自我记录的,但是有时您会拥有强制外部记录的编码标准,然后像这样的工具将使您省去很多脑筋急转弯的打字工作。


16
而这正是我所讨厌的“文档”。它只是添加字节而没有告诉我方法和参数名称尚未告诉我的任何内容。不要这样做,除非将评论编辑为值得的时间... :-(
peSHIr

12
当然,您应该对其进行编辑以添加信息。但是作为模板,它非常好。
Rasmus Faber

3
@Rasmus:这是一个模板,对于好的文档,应该完全丢弃并重新编写,因为它没有任何信息内容。因此,与空白相比,实际上要付出更多的努力。
乔伊,

35
///

是获取“方法描述”注释框的快捷方式。但是,请确保在添加函数名称和签名之前已写好。首先写下函数名称和签名。

然后在函数名称上方键入///

你会自动得到

在此处输入图片说明


4
漂亮的不寻常的帖子功能,动画。
n611x007,2013年

1
你是怎么做到的?我喜欢那个答案。以前从未见过。
Matthis Kohli

2
这真好。功能的参数之一是添加。
阿米特·贾(Amit Jha)'17

19

Visual Assist也是一个不错的解决方案,而且成本很高。

对其进行调整以生成doxygen样式的注释后,这两次单击将产生-

/**
* Method:    FindTheFoo
* FullName:  FindTheFoo
* Access:    private 
* Qualifier:
* @param    int numberOfFoos
* @return   bool
*/
private bool FindTheFoo(int numberOfFoos)
{

}

(在默认设置下,它有所不同。)


编辑:自定义“文档方法”文本的方法是在VassistX-> Visual Assist Options->建议下,选择“编辑VA代码段”,语言:C ++,类型:重构,然后转到“文档方法”并自定义。上面的示例是通过以下方式生成的:

va_doxy


请分享您如何在VA
Damian 2016年

详细回答。希望这可以帮助。
Ofek Shilon

插入代码段:在方法名称/签名中使用光标,alt + shift + q>“文档方法”
Andrew

13

通常,如果您在要注释的内容(方法,类)上方添加三个单个注释标记,则Visual Studio会自动创建它。

在C#中,它将为///

如果Visual Studio不这样做,则可以在其中启用它

选项->文本编辑器-> C#->高级

并检查

生成///的XML文档注释

图示说明


3

在Visual Basic中,如果先创建函数/子,然后在其上方的行中键入'3次,它将自动生成相关的xml以进行文档编制。当您将鼠标悬停在智能感知中以及使用该功能时,也会显示此信息。


2

您可以使用代码段插入所需的任何行。

另外,如果在函数标题上方的行上键入三个单引号('''),它将插入XML标题模板,然后您可以填写该模板。

这些XML注释可以由文档软件解释,并且作为Assembly.xml文件包含在构建输出中。如果使用DLL保留该XML文件并在另一个项目中引用该DLL,则这些注释将在intellisense中可用。


那是VB.NET:在C#中///
peSHIr

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.