多个XSD架构文件到C#类

时间:2009-07-16 21:44:02

标签: c# xsd

从多个XSD架构文件生成C#类的最佳方法是什么?

某些XSD架构文件可能依赖于另一个,我试图避免生成重复的C#类。

2 个答案:

答案 0 :(得分:49)

使用XSD.EXE程序,但将所有模式传递给同一命令行中的程序。

例如:

> xsd /c qbxmltypes130.xsd QBUqbxmlops130.xsd QBUqbxmlso130.xsd QBUqbxml130.xsd

将发出一个名为:

的类
qbxmltypes130_QBUqbxmlops130_QBUqbxmlso130_QBUqbxml130.cs

在这种情况下,这些是Quickbooks Desktop SDK xsd文件,最终文件具有前3个文件所依赖的类型。它不会自行发射,但依赖它可以按需运行。

请注意,有一个/parameters:<file>开关,允许您指定命令行参数的文件。我记得因为类似的原因在一个项目中使用它。

XSD.EXE doc具有参数格式。

答案 1 :(得分:31)

我一个人发现MSDN文档中的示例有点缺乏。 这是描述的问题代码的示例参数文件:

<xsd xmlns='http://microsoft.com/dotnet/tools/xsd/'>
<generateClasses language='CS' namespace='Namespace.subnamespace'>
    <schema>FirstSchema.xsd</schema>
    <schema>AnotherSchema.xsd</schema>
    <schema>LastSchema.xsd</schema>
</generateClasses>
</xsd>