0

在 Visual Studio 中,可以将 xml 注释添加到方法/类中以提供文档。请参阅http://msdn.microsoft.com/en-us/magazine/cc302121.aspx

Visual Studio 从这些 xml 注释生成文件并导出它们,因此它们肯定可以访问。

我的问题是,是否有某种类可以让程序在运行时访问 xml 文本?(我认为蛮力的方法是解析导出的文件,但这不是一个很好的解决方案)

我想这样做的原因是因为我正在为一个更大的程序制作一种帮助程序,所以我想将 xml 注释输出到屏幕上。我通过反射获得了属性名称,那么有没有办法将名称反馈给某个类并获取 xml 文档?

我已经尝试搜索,但我找不到任何东西。我可能措辞不好。这可能吗?

4

3 回答 3

2

XML 注释会从可执行文件中删除——这就是为什么有一个特殊的编译器标志可以从它们生成 XML 文档,这样它们就不会丢失。

有一些工具可以帮助您从这些 XML 文件生成 HTML 帮助和其他格式。

于 2011-06-13T18:15:42.323 回答
1

就我现在而言,XML 注释没有作为元数据保存在程序集二进制文件(.exe 或 .dll)中。所以唯一的选择就是直接解析Visual Studio生成的XML文件。

于 2011-06-13T18:16:44.310 回答
1

试试DocsByReflection

// From type.
var typeDoc = DocsService.GetXmlFromType(typeof(Stub));

// From property.
var propertyInfo = typeof(Stub).GetProperty("PropertyWithDoc");
var propertyDoc = DocsService.GetXmlFromMember(propertyInfo);

// From method.
var methodInfo = typeof(Stub).GetMethod("MethodWithGenericParameter");
var methodDoc = DocsService.GetXmlFromMember(methodInfo);

// From assembly.
var assemblyDoc = DocsService.GetXmlFromAssembly(typeof(Stub).Assembly);
于 2013-04-26T15:23:20.543 回答