有没有任何工具可以从XML创建一个类来进行反序列化?

时间:2009-06-17 19:00:02

标签: c# .net xml xml-serialization

我有这个XML文件,我想将它反序列化为一个对象。但我不想输入它的类定义。有什么工具可以为我创建类的C#代码,从样本数据中推断出数据类型?

3 个答案:

答案 0 :(得分:5)

是。开箱即用,您可以使用xsd.exe从XML生成XSD文件。您还可以使用此工具从XSD文件生成类。

它产生的代码是有限的,这就是为什么有一些第三方工具已经介入。

其中两个工具包括LiquidXML(花钱)和CodeXS(免费)。我们使用CodeXS,因为它是免费且可扩展的。我们已经扩展了很多。

修改 CodeXS有一个online tool。只需给它一个XSD。它为您生成课程。 它们还有一个command-line tool(源代码),它是可扩展的,不需要您将XSD发送到他们的Web服务。我们将其用作预构建步骤。

答案 1 :(得分:2)

Liquid Technologies有一个很好的工具(数据绑定)http://www.liquid-technologies.com/。你真的需要定义一个架构,而不是让这样的工具从样本数据“推断”它。

我们发现Liquid的一个好处是它还可以为Java,C ++,C#,VBA等生成代码。所有这些都非常一致。

答案 2 :(得分:1)

查看LINQ-to-XSD

它要求您为XML编写架构,但是直接转换为对象非常好。