2010-06-30 119 views
1

我有两个具有相同数据但标签不同的xml文件。我需要将它们串行化为一个对象。起初,我试图创建类:我如何反序列化两个具有不同标签但具有相同数据的xml文件

[XmlRoot(ElementName="ONIXMessage")] 
public class ONIXMessage 
{ 
    [XmlAttribute(AttributeName="release")] 
    public string Release { get; set; } 

    [XmlElement("Header")] 
    public Header Header { get; set; } 

    [XmlElement("Product")] 
    public List<Product> Products { get; set; }   
} 

但是,我需要创建另一个类为不同标签的XML。除非我找到更好的反序列化方法。我目前有这样的事情:

XmlSerializer serializer = new 
XmlSerializer(type); 

FileStream fs = new FileStream(filename, FileMode.Open); 
XmlReader reader = new XmlTextReader(fs); 

return (ONIXMessage)serializer.Deserialize(reader); 

希望我说得通。

+0

你为什么重复这个问题: http://stackoverflow.com/questions/3149184/can-i-use-interfaces-or-polymorphism-to-deserialise-two-different-xml-files-into/ 3149244#3149244 – 2010-06-30 13:15:10

+0

我没想到我在问正确的问题。你在最后一条线索中的回答,无论如何有助于回答我所想的问题。我认为最好只是问另一个更直接的问题,而不是添加到另一个问题。我意识到我的问题主要是关于序列化而不是接口..我说刚刚注意到编辑链接。所以我想我可以改变这个问题。啊,我们生活和学习。 – Simon 2010-06-30 14:14:23

回答

相关问题