C # Deserialize XML zum Objekt

8

Probleme beim Deserialisieren einiger XML-Dateien in ein Objekt in C #.

Der Fehler, den ich erhalte, ist ...

%Vor%

Die XSD, die ich zum Generieren meiner Klasse erhalten habe, ist wie folgt ...

%Vor%

(abgeschnitten)

Die Datei, die ich zu importieren versuche, ist wie folgt:

%Vor%

(abgeschnitten)

Ich denke was passiert, wenn .Net versucht, das XML zu dererialisieren, es trifft die erste Zeile, die das "xmlns: ast" enthält und Beschwerden darüber. Wie ich es verstehe, wird .Net versuchen, Attribute einer öffentlichen Eigenschaft in der Zielklasse zuzuordnen (und es wird keine namens xmlns finden. Oder es stimmt etwas nicht damit, wie ich die Namensräume behandle.

Mein Deserialisierungscode sieht folgendermaßen aus:

%Vor%

Ich habe auch verschiedene Kombinationen aus dem Hinzufügen eines Namespace-Managers zum XML-Dokument versucht.

%Vor%

Ich verstehe, dass es einen Weg gibt, wie ich .net sagen kann, welche Namespaces zu akzeptieren sind.

Wäre für einige Hilfe mit diesem Problem dankbar.

--- Auf Anfrage mit Klassenschnipsel aktualisiert (Entschuldigung sollte vorher enthalten sein) das wurde mit xsd.exe erstellt ---

%Vor%     
Remotec 03.11.2010, 09:13
quelle

2 Antworten

19

Ohne ein vollständiges xsd / xml oder (alternativ) Ihre C # -Klassen können wir nicht reproduzieren. Aber ab dem Xml funktioniert das gut für mich; Bedeutung: Der Fehler ist nicht (soweit ich sehen kann) in den Code / Daten, die Sie gepostet haben. Können Sie ein vollständigeres (reproduzierbares) Beispiel veröffentlichen?

%Vor%

funktioniert auch gut mit:

%Vor%

und:

%Vor%

und

%Vor%     
Marc Gravell 03.11.2010, 09:42
quelle
0

Hier ist was ich benutze (es tut mir leid, bin etwas spät zur Party):

%Vor%     
Denis 01.04.2015 18:48
quelle