XML序列化和反序列化 - 节点

时间:2012-08-14 14:06:30

标签: c# xml xml-serialization

我对XML序列化和反序列化有疑问。序列化类是否必须与XML完全相同。订单可以不同吗?

如果XML的节点少于该类的节点,会发生什么?

如果我有许多不同的XML进入不同的XML结构,我怎么能在序列化类中处理这个不同的结构?

由于

2 个答案:

答案 0 :(得分:2)

类属性实际上没有排序,因此XML中节点的顺序没有任何特定含义 - 它可以是任何东西。

如果XML中缺少一个节点,则不会设置相应的类属性 - 因此它将具有其默认值,或者类构造函数将其设置为的任何值。

不同的XML结构可以由同一个类处理,但有一些限制 - 没有具体的例子,很难说。

答案 1 :(得分:1)

只要您的属性,字段等与xml节点正确匹配,顺序就无关紧要了。

此外,如果xml的节点少一个,那么该属性不会获得反序列化的值,这就是全部。

结构非常重要,但不是订单。这是一个非常广泛的问题,但我建议你去阅读它并查看一些例子。

看看这些让你开始一点。

http://msdn.microsoft.com/en-us/library/tz8csy73.aspx

http://msdn.microsoft.com/en-us/library/58a18dwa(v=vs.100).aspx