![]() |
[C#] Fehlerhafte XML-Serialisierung
Hallo DP :hi: ,
ich habe hier ein doch sehr merkwürdiges Problem mit der Serialisierung eines Objekts, welches eine String-Eigenschaft besitz. Diese Eigenschaft soll einen Pfad zu einer Datei enthalten. Schreibe ich den Pfad direkt in die Codedatei mit der Pfadangabe und \\ als Ordner-Trenner rein, funktioniert die Serialisierung einwandfrei, wobei als Ordner-Trennung \ verwendet wird.
Code:
Will ich ddie dabei erzeugte Datei wieder deserialisieren, funktioniert es nicht, und auch andere Eigenschaften werden nicht deserialisiert, noch kommt irgendeine Exception.
ProgSettings.SoundPath = "ok1.wav";
XmlSerializer ser = new XmlSerializer(typeof(Settings)); FileStream str = new FileStream(FilePath, FileMode.Create); ser.Serialize(str, ProgSettings); str.Close();
Code:
Gebe ich keinen Pfad an, funktioniert die deserialisierung wieder einwandfrei...
XmlSerializer ser = new XmlSerializer(typeof(Settings));
StreamReader sr = new StreamReader(FilePath); ProgSettings = (Settings)ser.Deserialize(sr); sr.Close(); Wo liegt da das Problem? Ich benutze das VS 2005 Standard. |
Re: [C#] Fehlerhafte XML-Serialisierung
Ist der Setter für den Pfad public und auf einem leeren Objekt aufrufbar, ohne Exceptions auszulösen? Das ist Vorraussetzung für XMLS ;)
|
Re: [C#] Fehlerhafte XML-Serialisierung
Zitat:
Code:
public string SoundPath;
|
Re: [C#] Fehlerhafte XML-Serialisierung
Hm, das ist natürlich interessant. Versuch doch mal, so lange Sachen aus deinem Testcase rauszuwerfen, bis es funktioniert, und poste das letzte nicht funktionierende.
|
Re: [C#] Fehlerhafte XML-Serialisierung
Liste der Anhänge anzeigen (Anzahl: 1)
Ich hab grade was im Debuger entdeckt. Bild davon mal im Anhang.
Kann es damit zusammenhängen? Wenn ich die Pfadangabe auf einen Ordner verkürze, wird immerhin der Rest richtig deserialisiert. |
Re: [C#] Fehlerhafte XML-Serialisierung
Das ist merkwürdig :gruebel: ... Nach Reflector sieht es eigentlich so aus, als ob mapping nach dem Konstruktor unmöglich null sein könnte.
Wie sieht denn die XML-Datei aus, die nicht mehr deserialisiert werden kann? Wird vielleicht ganz böse irgendwo eine Exception geschluckt? Fange mal über Strg+D,E alle CLR-Exceptions ab. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz