Hallo Forum,
ich bin gerade dabei, ein kleines Programm zu schreiben. Dafür habe ich drei Klassen.
Klasse 1: enthält alle wichtigen Eigenschaften (fast nur Strings)
C#-Quelltext
1: 2: 3: 4: 5: 6:
| public class IdeenProperties { public string Ideenname { get; set; } public string Ideenbeschreibung { get; set; } public int Priorität { get; set; } } |
Klasse 2: enthält eine Liste vom Typ der Klasse 1 und Methoden, die diese Liste speichern und öffnen
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40:
| public class IdeenSerialisation { public List<IdeenProperties> IdeenProperties { get; set; } public IdeenSerialisation() { IdeenProperties = new List<Entwicklertool.IdeenProperties>(); }
public void Speichern(string Pfad) { try { using (FileStream file = new FileStream(Pfad, FileMode.Create)) { XmlSerializer xml = new XmlSerializer(typeof(IdeenSerialisation)); xml.Serialize(file, this); } } catch (Exception ex) { MessageBox.Show(ex.Message); } } public static IdeenSerialisation Laden(string Pfad) { try { using (FileStream file = new FileStream(Pfad, FileMode.Open)) { XmlSerializer xml = new XmlSerializer(typeof(IdeenSerialisation)); return (IdeenSerialisation)xml.Deserialize(file); } } catch(Exception ex) { MessageBox.Show(ex.Message); return null; } } } |
Klasse 3: hier kann der Benutzer verschiedene Daten angeben. Als erstes wird ein Objekt von IdeenSerialisation erstellt und im Konstruktor wird dann diesem Objekt ein Wert hinzugefügt durch die Methode Öffnen. Wenn das Objekt leer ist, also wenn keine XML Datei existiert, dann wird einfach ein neues Objekt instantiert.
So, wenn ich jetzt dieser Liste ein neues Objekt mit zugebe und dann die Speichern Methode ausführe, passiert nichts, die XML Datei sieht dann so aus:
XML-Daten
1: 2: 3: 4:
| <?xml version="1.0"?> <IdeenSerialisation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <IdeenProperties /> </IdeenSerialisation> |
Woran kann das liegen?
"Wer keinen Sinn im Leben sieht, ist nicht nur unglücklich, sondern kaum lebensfähig" - Albert Einstein