2009-02-18 40 views
3

首先,我是这个主题的新手,在收集了大量背景信息后,我越来越困惑。C#为xml序列化类创建XSD最简单的方法是什么

我有几个类,他们都是可序列化的,有些实现IXmlSerializable。这些类在适当的位置用[XmlRoot],[XmlAttribute]等标记。

我想知道的是如何使用现有标签为每个类创建简单的XSD。我对手册和编程方式都感兴趣。如果可能的话,我宁愿使用集成在VS2008中的工具。

回答

4

那么,与IXmlSerializable所有投注都关闭,因为没有模式是保证。然而,对于其余:

xsd.exe <assembly>.dll|.exe [/outputdir:] [/type: [...]] 

MSDN

/吨[YPE]:类型名指定的 名称创建一个模式的类型。您可以指定多个类型参数。 如果typename未指定 名称空间,则Xsd.exe会将该程序集中的所有类型 与指定的 类型进行匹配。如果typename指定一个 名称空间,则只匹配该类型。 如果typename以星号 字符(*)结尾,则该工具会匹配以*之前的字符串 开头的所有 类型。如果省略/ type 选项,则Xsd.exe将为程序集中的所有类型生成 架构。

...

类XSD生成从一个或多个类型的XML模式 在运行时 汇编文件。生成的模式 定义了由 System.Xml.Serialization.XmlSerializer使用的XML格式。

+0

是否有可能在类的构建过程中包含xsd.exe? – mafu 2009-02-18 12:27:53

相关问题