如何将XML注释合并回.cs文件?

时间:2014-11-20 21:13:22

标签: c# xml xsd xml-comments

从C#类文件中提取注释相对容易(参见Extracting doc comments from C# source file),但我最近遇到了相反的问题。

我的项目有一堆从XML模式生成的类(通过Microsoft的xsd.exe)。我想在这些类上写出XML文档,但我们必须经常重新创建它们。我希望能够写出注释,将它们提取到自己的.xml文件中,运行xsd.exe从模式中重新创建类,然后将注释合并回来。

有没有办法做到这一点?

1 个答案:

答案 0 :(得分:3)

我偷看了SDK的v8.1A版本的xsd.exe(它是用.NET编写的,所以你可以使用像JustDecompile这样的工具来查看它的功能)。驱动XSD-> C#生成的方法称为ImportSchemasAsClasses。它的作用是将XSD文件读入原始XmlSchemas实例,使用XmlSchemaImporter类导入模式(进入称为类型映射的抽象模型),然后使用XmlCodeExporter类生成代码进入Code DOM课程。正如您从链接中看到的,这些是公开的,但未记录的API。但是您可以轻松复制xsd.exe所做的事情(您只需要调用公共.NET API,只需复制并粘贴xsd.exe所做的事情)并点击正确的位置将一些注释添加到Code DOM中,干净整洁,不需要字符串操作。