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

时间:2008-11-10 09:51:23

标签: visual-studio metadata xml-comments

我最近有点惊讶地发现我精心制作的xml评论没有出现在我的同事的智能感知中。总是使用带有项目引用的关联程序集,我没有意识到你必须导出.xml文档以访问这些信息。

这让我想知道.Net框架智能感知是如何工作的。如果我理解正确,.xml文件必须隐藏在特殊文件夹的某个地方?

但我的主要问题是关于'Goto定义' - 如果您在.Net框架程序集上进行定义,您将获得从元数据生成的信息 - 但也有大量有用的注释 - 这些是从Xml注释中神奇地生成的,或者有人必须写一个宏+来转换它们只是为了构建?换句话说:如何为我的装配体获得这种效果?

1 个答案:

答案 0 :(得分:1)

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

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

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

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

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