我目前是一名编程学生,显然我的问题很简单,但我一直无法在网上找到答案。所以这里是:
在 C# 中的 XML /// 注释中,<returns>
标记出现在哪里,我知道<summary>
当您将鼠标悬停在方法调用上时,标记中包含的所有内容都会以智能感知显示,而不是返回标记。
那么<returns>
标签是从哪里来的呢?
谢谢。
我目前是一名编程学生,显然我的问题很简单,但我一直无法在网上找到答案。所以这里是:
在 C# 中的 XML /// 注释中,<returns>
标记出现在哪里,我知道<summary>
当您将鼠标悬停在方法调用上时,标记中包含的所有内容都会以智能感知显示,而不是返回标记。
那么<returns>
标签是从哪里来的呢?
谢谢。
当您在 View >> Object Browser 中看到方法时
例如,您将看到如下内容:
private int GetColumnIndex(Microsoft.Office.Interop.Excel.Worksheet worksheet, string columnName, int rowIndex, int startColumnIndex)
Member of MyAddIn.CommandHandlers.CommandHandler
Summary:
Returns the column index with specified name and in specified row
Parameters:
worksheet: Target worksheet
columnName: Column name to find
rowIndex: Row index in which to search the column
startColumnIndex: Start index of the column
Returns:
The index of column if found, else returns 0
如果您从评论中生成 API 文档,它将显示在返回值部分中,如此处所示,就在备注部分之前。
当您选择在编译时构建 XML 文档文件时,XML 文档注释中包含的所有内容都会被复制到该文件中。然后像Sandcastle这样的程序可以从中构建类似于 MSDN 的 HTML 文档。
据我所知,它没有显示在 Visual Studio 自己的 IntelliSense 中。但这不是不在那里写东西的借口:-)。例如,ReSharper 的 Ctrl+Q确实显示了它。
对于那些可能试图找到东西的人。这可能不是最好的方法,但恕我直言,它确实使将鼠标悬停在方法名称上时方法的作用更容易理解。
/// <summary>
/// Adds a new post given the mapped PostDTO and userId <br></br><br></br>
/// <b>Returns</b> the newly created object, otherwise null.
/// </summary>
/// <param name="postDTO"></param>
/// <param name="userId"></param>
PostDTO addPost(PostDTO postDTO, long userId);
通过这种方式,您可以在 VS(至少在 VS 2019 中)中看到一些东西,就像在下一张图片中一样,根据我的经验,当您尝试理解其他人编写的代码时,至少您可以知道会发生什么,无论是实际的object
or null
,还是其他设想。
我希望它对其他人有用。
其他部分(基本上是任何异常summary
)都不会出现在智能感知中。它们仅打算出现在使用Sandcastle之类的工具从 XML 生成的文档中。