Serialisierung von privaten Mitgliedsdaten

Ich versuche zu serialisieren eines Objekts in XML, der eine Anzahl von Eigenschaften, von denen einige sind schreibgeschützt.

public Guid Id { get; private set; }

Habe ich markiert die Klasse [Serializable] und implementierte ich die ISerializable-Schnittstelle.

Unten ist der code, den ich verwende, um mein Objekt serialisieren.

public void SaveMyObject(MyObject obj)
{
    XmlSerializer serializer = new XmlSerializer(typeof(MyObject));
    TextWriter tw = new StreamWriter(_location);
    serializer.Serialize(tw, obj);
    tw.Close();
}

Leider fällt es mehr auf die erste Zeile mit dieser Meldung.

InvalidOperationException wurde unbehandelt:
Nicht zum generieren einer temporären Klasse (Ergebnis=1).
Fehler CS0200: die Eigenschaft oder der indexer 'MyObject.Id' kann nicht zugewiesen werden -- Sie sind schreibgeschützt

Wenn ich die Id-Eigenschaft auf public funktioniert es einwandfrei. Kann mir jemand sagen, wenn ich mache etwas, oder zumindest dann, wenn es überhaupt möglich?

InformationsquelleAutor der Frage Jon Mitchell | 2009-04-29

Schreibe einen Kommentar