Visual studio 框架goto定义显示注释,这些注释是从xml注释生成的吗?

Visual studio 框架goto定义显示注释,这些注释是从xml注释生成的吗?,visual-studio,metadata,xml-comments,Visual Studio,Metadata,Xml Comments,我最近有点惊讶地发现,我精心编制的xml注释并没有在intellisense中为我的同事显示出来。由于总是将关联的程序集与项目引用一起使用,我没有意识到您也必须导出.xml文档才能访问此信息 这让我想知道.Net framework intellisense是如何工作的。如果我理解正确的话,.xml文件必须隐藏在一个特殊的文件夹中 但我的主要问题是关于“Goto definition”——如果你在.Net framework程序集上进行了Goto definition,你会得到从元数据生成的信息

我最近有点惊讶地发现,我精心编制的xml注释并没有在intellisense中为我的同事显示出来。由于总是将关联的程序集与项目引用一起使用,我没有意识到您也必须导出.xml文档才能访问此信息

这让我想知道.Net framework intellisense是如何工作的。如果我理解正确的话,.xml文件必须隐藏在一个特殊的文件夹中


但我的主要问题是关于“Goto definition”——如果你在.Net framework程序集上进行了Goto definition,你会得到从元数据生成的信息,但也有很多有用的注释——这些注释是从Xml注释神奇地生成的,还是有人必须编写一个宏+来转换它们只是为了构建?换言之:我如何才能为我的程序集获得这种效果?

您的项目是否配置为生成XML文档?仅仅因为您将注释添加到源代码中,编译器不会生成.xml文件,除非它被告知要生成

在项目属性页面中,转到“构建”选项卡并查看“输出”部分。您应该看到一个标题为“XML文档文件”的复选框条目。如果该复选框后面的文本框为空,则不生成XML文档文件

生成XML文档文件后,应该可以在IntelliSense工具提示中看到注释。如果将对其他项目的引用作为项目引用,则应自动执行此操作。如果包含对程序集的引用,则需要确保xml文件与引用的程序集位于同一位置。(生成时,应分别为bin/debug或bin/release文件夹中包含这些程序集的所有程序集获取xml文件。)

对于.NET Framework程序集本身,相应的xml文档文件作为框架的一部分安装。对于.NET 2.0、3.0或3.5,文档文件位于
C:\Windows\Microsoft.NET\Framework\v2.0.50727\en
(假设默认安装框架)。Visual Studio中的IntelliSense工具提示和“转到定义”功能都使用这些文件来显示此信息。没有任何特殊的处理或运行宏来实现这一点。VisualStudio最有可能使用的唯一信息是注册表项的组合,以确定文档文件的正确路径


虽然您可能可以在同一文件夹中找到您自己程序集的xml文档文件,但我建议您不要这样做,因为这样会用与框架无关的文件污染框架安装。

您的项目是否配置为生成xml文档?仅仅因为您将注释添加到源代码中,编译器不会生成.xml文件,除非它被告知要生成

在项目属性页面中,转到“构建”选项卡并查看“输出”部分。您应该看到一个标题为“XML文档文件”的复选框条目。如果该复选框后面的文本框为空,则不生成XML文档文件

生成XML文档文件后,应该可以在IntelliSense工具提示中看到注释。如果将对其他项目的引用作为项目引用,则应自动执行此操作。如果包含对程序集的引用,则需要确保xml文件与引用的程序集位于同一位置。(生成时,应分别为bin/debug或bin/release文件夹中包含这些程序集的所有程序集获取xml文件。)

对于.NET Framework程序集本身,相应的xml文档文件作为框架的一部分安装。对于.NET 2.0、3.0或3.5,文档文件位于
C:\Windows\Microsoft.NET\Framework\v2.0.50727\en
(假设默认安装框架)。Visual Studio中的IntelliSense工具提示和“转到定义”功能都使用这些文件来显示此信息。没有任何特殊的处理或运行宏来实现这一点。VisualStudio最有可能使用的唯一信息是注册表项的组合,以确定文档文件的正确路径


虽然您可能可以在同一文件夹中找到自己程序集的xml文档文件,但我建议您不要这样做,因为这样会用非框架相关文件污染框架安装。

谢谢,但我想知道框架程序集-System.Drawing等的xml文件在哪里?我可以把我的xml文件放在它们的位置吗?“从元数据生成”中的注释来自哪里?对不起。我误解了你的要求。我已经更新了我的答案。感谢提供额外的信息,但问题的最后一部分仍然是“来自元数据”视图定义中的注释来自何处?从“转到定义”菜单显示的“生成的元数据”文件中的注释也来自与框架一起安装的xml文档文件。(请参阅我的答案最后一段中的最后三句话)谢谢,但我想知道有关框架组件-System.Drawing等的信息,这些组件的xml文件在哪里?我可以把我的xml文件放在它们的位置吗?“从元数据生成”中的注释来自哪里?对不起。我误解了你的要求。我已经更新了我的答案。感谢提供额外的信息,但问题的最后一部分仍然是“来自元数据”视图定义中的注释来自何处?从“转到定义”菜单显示的“生成的元数据”文件中的注释也来自与框架一起安装的xml文档文件。(见我的答案最后一段第二段的最后三句。)