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);
Надеюсь, что у меня есть смысл.
Почему вы дублируется этот вопрос: http://stackoverflow.com/questions/3149184/can-i-use-interfaces-or-polymorphism-to-deserialise-two-different-xml-files-into/ 3149244 # 3149244 –
Я не думал, что задал правильный вопрос. Ваш ответ в последнем потоке, однако полезный, не отвечал на то, что я думал, что я спросил. Я предположил, что лучше просто задать еще один прямой вопрос, чем добавить к другому. Я понял, что мой вопрос в основном касался сериализации, а не интерфейсов. Сказав, что я только что заметил ссылку на редактирование. Так что, наверное, я только что изменил вопрос. Хорошо, мы живем и учимся. – Simon