AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [C#] Fehlerhafte XML-Serialisierung
Thema durchsuchen
Ansicht
Themen-Optionen

[C#] Fehlerhafte XML-Serialisierung

Ein Thema von TurboMartin · begonnen am 27. Jun 2009 · letzter Beitrag vom 28. Jun 2009
Antwort Antwort
TurboMartin

Registriert seit: 13. Feb 2006
Ort: Bad Honnef
765 Beiträge
 
Turbo Delphi für Win32
 
#1

[C#] Fehlerhafte XML-Serialisierung

  Alt 27. Jun 2009, 21:42
Hallo DP ,

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:
ProgSettings.SoundPath = "ok1.wav";
XmlSerializer ser = new XmlSerializer(typeof(Settings));
FileStream str = new FileStream(FilePath, FileMode.Create);
ser.Serialize(str, ProgSettings);
str.Close();
Will ich ddie dabei erzeugte Datei wieder deserialisieren, funktioniert es nicht, und auch andere Eigenschaften werden nicht deserialisiert, noch kommt irgendeine Exception.

Code:
XmlSerializer ser = new XmlSerializer(typeof(Settings));
StreamReader sr = new StreamReader(FilePath);
ProgSettings = (Settings)ser.Deserialize(sr);
sr.Close();
Gebe ich keinen Pfad an, funktioniert die deserialisierung wieder einwandfrei...

Wo liegt da das Problem? Ich benutze das VS 2005 Standard.
Tomorrow will be cancelled due to lack of interest.

  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: [C#] Fehlerhafte XML-Serialisierung

  Alt 27. Jun 2009, 21:44
Ist der Setter für den Pfad public und auf einem leeren Objekt aufrufbar, ohne Exceptions auszulösen? Das ist Vorraussetzung für XMLS
  Mit Zitat antworten Zitat
TurboMartin

Registriert seit: 13. Feb 2006
Ort: Bad Honnef
765 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: [C#] Fehlerhafte XML-Serialisierung

  Alt 27. Jun 2009, 21:48
Zitat von Dax:
Ist der Setter für den Pfad public und auf einem leeren Objekt aufrufbar, ohne Exceptions auszulösen? Das ist Vorraussetzung für XMLS
Code:
public string SoundPath;
Tomorrow will be cancelled due to lack of interest.

  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#4

Re: [C#] Fehlerhafte XML-Serialisierung

  Alt 27. Jun 2009, 21:55
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.
  Mit Zitat antworten Zitat
TurboMartin

Registriert seit: 13. Feb 2006
Ort: Bad Honnef
765 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: [C#] Fehlerhafte XML-Serialisierung

  Alt 27. Jun 2009, 22:00
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.
Miniaturansicht angehängter Grafiken
xmls_204.png  
Tomorrow will be cancelled due to lack of interest.

  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#6

Re: [C#] Fehlerhafte XML-Serialisierung

  Alt 28. Jun 2009, 11:39
Das ist merkwürdig ... 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.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz