我有一个xml文档,我必须反序列化。 该文件看起来像这样
<root>
<node1>
<node2>
<child1>
<infoNode1 attr="value"/>
.
.
.
</child1>
<child2>
.
.
</child2>
</node2>
</node1>
</root>
只有 child1 包含信息。我现在反序列化的方式是每个节点都有一个单独的类,但我喜欢只有 node2 的类,因为所有数据都包含在那里。
有没有简单的方法可以跳过 / root / node1 ?我是否必须为此实现自己的反序列化?
感谢。
编辑:
我用来执行反序列化的代码
string path = "file.xml";
RootClass projectDef = null;
XmlSerializer serializer = new XmlSerializer(typeof(RootClass));
StreamReader reader = new StreamReader(path);
projectDef = (RootClass)serializer.Deserialize(reader);
reader.Close();
答案 0 :(得分:3)
序列化/反序列化用于写入和读取对象或对象层次结构。州。因此,您需要让所有节点完全支持序列化。
但是如果您只是想读取xml并将其解析为对象,则不必使用序列化。