Используя c #, я хочу десериализовать xml из различных источников в объекты общего типа.XML не будет иметь ту же схему.Например, в следующем xml /thingContainer/thing/name
и widget/@title
оба будут отображаться в myClass.DisplayName
.
Xml1:
<thingContainer>
<thing>
<name>MyName</name>
</thing>
</thingContainer>
Xml2:
<widget title="myTitle" />
Поэтому я не могу пометить свой класс [XmlElement]
, так как он будет отличаться в зависимости от источника моего xml.Есть ли какой-то трюк, который я могу сделать с наследованием или некоторый вспомогательный класс, который позволит мне легко десериализовать XML из разных источников?Есть ли какой-нибудь простой способ сопоставить поля класса с xpaths?
Конечно, если мне придется, я буду анализировать и десериализовать xml вручную ... но что это за забава?