Freigeben über


Beispiel für Serialisierung

Aktualisiert: November 2007

Diese Projektmappe veranschaulicht, wie ein Objekt serialisiert und deserialisiert wird.

So erhalten Sie Beispiele und Anweisungen zu ihrer Installation

  • Führen Sie eine oder mehrere der folgenden Aktionen aus:

    • Klicken Sie im Menü Hilfe auf Samplings.

      In der Infodatei befinden sich Informationen zu Beispielen.

    • Gehen Sie zur Website mit Visual Studio 2008-Beispielen. Hier stehen die aktuellsten Versionen der Beispiele bereit.

    • Suchen Sie Beispiele auf dem Computer, auf dem Visual Studio installiert wurde. Standardmäßig werden Beispiele und eine Infodatei unter Laufwerk:\Programme\Microsoft Visual Studio 9.0\Beispiele\lcid installiert. Für die Express-Version von Visual Studio werden alle Beispiele online bereitgestellt.

Weitere Informationen finden Sie unter Suchen von Beispieldateien.

Sicherheitshinweis:

Dieser Beispielcode soll lediglich ein Konzept veranschaulichen. Es wird nur der für das jeweilige Konzept relevante Code dargestellt. Möglicherweise erfüllt dieser nicht die Sicherheitsanforderungen für eine bestimmte Umgebung, und er sollte nicht genau wie dargestellt verwendet werden. Wir empfehlen, Sicherheits- und Fehlerbehandlungscode hinzuzufügen, um Ihre Projekte sicherer und stabiler zu machen. Microsoft stellt diesen Beispielcode "wie besehen" und ohne Garantien zur Verfügung.

So führen Sie dieses Beispiel aus

  • Drücken Sie F5.

Veranschaulicht

Diese Anwendung enthält zwei Klassen: eine mit einer Standardserialisierung und eine mit einer benutzerdefinierten Serialisierung. Die Benutzeroberfläche umfasst Schaltflächen zum Serialisieren und Deserialisieren der beiden Klassen. Die Klasse mit Standardserialisierung kann entweder in einer SOAP-Datei oder einer Binärdatei serialisiert werden. Die Klasse mit benutzerdefinierter Serialisierung wird in einer SOAP-Datei serialisiert. Zum Anzeigen der SOAP-Dateien wird ein TextBox-Steuerelement verwendet. Beide Klassen verfügen über das SerializableAttribute-Attribut. Die Klassen werden in der folgenden Tabelle beschrieben.

Klassenmember

SerializationClass

CustomSerializationClass

PublicVariable

Die öffentliche Variable wird serialisiert und deserialisiert, ohne verändert zu werden.

Die öffentliche Variable wird serialisiert und deserialisiert, ohne verändert zu werden.

PublicProperty

Die private Variable, die die Eigenschaft unterstützt, wird serialisiert und deserialisiert, ohne verändert zu werden.

Die private Variable, die die Eigenschaft unterstützt, wird unabhängig vom Wert, der in der Benutzeroberfläche festgelegt ist, mit -1 serialisiert. Sie wird daher mit dem Wert -1 deserialisiert.

NonSerializedVariable

Diese Variable wird nicht serialisiert, da sie mit dem NonSerializedAttribute gekennzeichnet ist. Die öffentliche Variable wird nicht serialisiert, und der deserialisierte Wert ist 0 (null).

Obwohl die Variable mit dem NonSerializedAttribute gekennzeichnet ist, wird sie serialisiert, da die benutzerdefinierte Serialisierung diese Einstellung überschreibt. Die öffentliche Variable wird serialisiert und deserialisiert, ohne verändert zu werden.

Es werden drei Typen von Serialisierung veranschaulicht:

  • SOAP-Formatierung   Class1 wird mithilfe der SoapFormatter-Klasse serialisiert.

  • Binäre Formatierung   Class1 wird mithilfe der BinaryFormatter-Klasse serialisiert.

  • Benutzerdefinierte Formatierung   Class2 implementiert die ISerializable-Schnittstelle, einschließlich der GetObjectData-Methode zur Ausführung einer benutzerdefinierten Serialisierung.

Siehe auch

Referenz

System.Runtime.Serialization.Formatters.Soap

Serialize

Deserialize

ISerializable

GetObjectData

SerializableAttribute