Teilen über


Serialisierung in .NET

Serialisierung ist der Prozess der Konvertierung des Zustands eines Objekts in eine Form, die beibehalten oder transportiert werden kann. Die Ergänzung der Serialisierung ist deserialisierung, die einen Datenstrom in ein Objekt konvertiert. Gemeinsam ermöglichen diese Prozesse die Speicherung und Übertragung von Daten.

.NET bietet die folgenden Serialisierungstechnologien:

  • DIE JSON-Serialisierung ordnet .NET-Objekte zu und von JavaScript Object Notation (JSON) zu. JSON ist ein offener Standard, der häufig zum Freigeben von Daten im Web verwendet wird. Der JSON-Serialisierer serialisiert standardmäßig öffentliche Eigenschaften und kann so konfiguriert werden, dass private und interne Member ebenfalls serialisiert werden.

  • Die XML- und SOAP-Serialisierung serialisiert nur public Eigenschaften und Felder und behält die Typtreue nicht bei. Dies ist nützlich, wenn Sie Daten bereitstellen oder nutzen möchten, ohne die Anwendung einzuschränken, die die Daten verwendet. Da XML ein offener Standard ist, ist es eine attraktive Wahl für die Gemeinsame Nutzung von Daten im Web. SOAP ist ebenfalls ein offener Standard, der es zu einer attraktiven Wahl macht.

  • Die binäre Serialisierung behält die Typtreue bei, was bedeutet, dass der vollständige Zustand des Objekts aufgezeichnet wird und wenn Sie deserialisieren, wird eine genaue Kopie erstellt. Diese Art von Serialisierung ist nützlich, um den Zustand eines Objekts zwischen verschiedenen Aufrufen einer Anwendung beizubehalten. So können Sie z. B. ein Objekt für unterschiedliche Anwendungen freigeben, indem Sie es in die Zwischenablage serialisieren. Sie können ein Objekt in einen Datenstrom, auf einen Datenträger, in den Arbeitsspeicher, über das Netzwerk usw. serialisieren. Remoting verwendet serialisierung, um Objekte "nach Wert" von einem Computer oder einer Anwendungsdomäne an eine andere zu übergeben.

    Warnung

    Die binäre Serialisierung mit BinaryFormatter kann gefährlich sein. Weitere Informationen finden Sie im BinaryFormatter-Sicherheitshandbuch und im BinaryFormatter-Migrationshandbuch.

Referenz

System.Text.Json
Enthält Klassen, die zum Serialisieren von Objekten in JSON-Formatdokumente oder Datenströme verwendet werden können.

System.Runtime.Serialization
Enthält Klassen, die zum Serialisieren und Deserialisieren von Objekten verwendet werden können.

System.Xml.Serialization
Enthält Klassen, die zum Serialisieren von Objekten in XML-Formatdokumente oder Datenströme verwendet werden können.