Dynamiczna Deserializacja XML

0

Witam,
mam takie pytanie: "Czy istnieje możliwość dynamicznego generowania klas potrzebnych do deserializacji XML?"

Chodzi głównie o to, że aplikacja exe dostaje plik xml i sama sobie tworzy klasy do których nastąpi deserializacja pliku.
Potrzebne mi to, gdyż chcę wczytać strukturę xml, potem wyciągnąć tylko elementy, które mnie interesują. Wyedytować je, a następnie wrzucić (zastąpić poprzednie) te dane w odpowiednie miejsca w oryginalnym pliku (tak aby końcowa struktura wyglądała identycznie jak oryginał, który wczytałem na samym początku, tyle że z "uaktualnionymi" przeze mnie danymi)
Problem jest taki, że nie znam całej struktury oryginalnych xml. Każdy oprócz danych które potrzebuje, zawiera inne różne elementy. Dlatego nie mogę zrobić klasy ogólnej dla wszystich tych plików xml.

Proszę o pomoc.

0

Jeżeli nazwy atrybutów bądź elementów są zawsze takie same to wystarczy , że użyjesz obiektów XElement i XDocument dostępnych w linq to XML.

Coś podobnego realizuje w jednym ze swoich mini projektów.
http://github.com/LaMik/TimeIsMoney/blob/master/TimeIsMoney/XMLModule/Task.cs

Jeżeli natomiast struktura może się znacznie różnić to nie pozostaje nic innego jak stworzenie pliku konfiguracyjnego zawierającego ustawienia struktury ,nazwy atrybutów itp . Najprawdopodobniej istnieją do tego jakieś gotowe frameworki.

Jeśli chcesz tworzyć dynamiczne klasy bez plików konfiguracyjnych to nie myśl w ogóle o deserialziacji i serialziacji , ponieważ te operacje są ściśle powiązane ze z góry ustalonymi typami. To o czym piszesz to po prostu zwykła modyfikacja pliku xml.

1 użytkowników online, w tym zalogowanych: 0, gości: 1