Serialisierung in .NETSerialization in .NET

Unter Serialisierung wird das Konvertieren des Zustands eines Objekts in eine Form verstanden, die erhalten oder transportiert werden kann.Serialization is the process of converting the state of an object into a form that can be persisted or transported. Das Gegenstück zur Serialisierung ist die Deserialisierung, die einen Stream in ein Objekt konvertiert.The complement of serialization is deserialization, which converts a stream into an object. Diese Prozesse ermöglichen es Ihnen, Daten zu speichern und zu übertragen.Together, these processes allow data to be stored and transferred.

.Net bietet die folgenden Serialisierungstechnologien:.NET features the following serialization technologies:

  • Die binäre Serialisierung behält die Typtreue bei, was für die Beibehaltung des Zustands eines Objekts zwischen verschiedenen Aufrufen einer Anwendung nützlich ist.Binary serialization preserves type fidelity, which is useful for preserving the state of an object between different invocations of an application. So können Sie z. B. ein Objekt für unterschiedliche Anwendungen freigeben, indem Sie es in die Zwischenablage serialisieren.For example, you can share an object between different applications by serializing it to the Clipboard. Sie können ein Objekt in einen Stream, einen Datenträger, den Arbeitsspeicher, über das Netzwerk usw. serialisieren.You can serialize an object to a stream, to a disk, to memory, over the network, and so forth. Die Serialisierung wird vom Remotingsystem dazu verwendet, um Objekte "als Wert" von einem Computer bzw. einer Anwendungsdomäne an einen anderen Computer bzw. eine andere Anwendungsdomäne zu übergeben.Remoting uses serialization to pass objects "by value" from one computer or application domain to another.

  • Die XML-und SOAP-Serialisierung serialisiert nur öffentliche Eigenschaften und Felder und bewahrt die Typtreue nicht.XML and SOAP serialization serializes only public properties and fields and does not preserve type fidelity. Dies ist hilfreich, wenn Daten bereitgestellt oder benutzt werden sollen, ohne die Anwendung, welche die Daten verwendet, zu beschränken.This is useful when you want to provide or consume data without restricting the application that uses the data. Da XML ein offener Standard ist, stellt XML eine attraktive Möglichkeit für den Datenaustausch im Internet dar.Because XML is an open standard, it is an attractive choice for sharing data across the Web. Ebenso ist SOAP ein offener Standard und damit auch eine attraktive Alternative.SOAP is likewise an open standard, which makes it an attractive choice.

  • Bei der JSON-Serialisierung werden nur öffentliche Eigenschaften serialisiert, und die Typtreue wird nicht beibehalten.JSON serialization serializes only public properties and does not preserve type fidelity. JSON ist ein offener Standard, der für die gemeinsame Nutzung von Daten im Internet geeignet ist.JSON is an open standard that is an attractive choice for sharing data across the web.

ReferenzReference

System.Runtime.Serialization
Enthält Klassen, mit denen Objekte serialisiert und deserialisiert werden können.Contains classes that can be used for serializing and deserializing objects.

System.Xml.Serialization
Enthält Klassen, die zur Serialisierung von Objekten in Dokumente oder Streams im XML-Format verwendet werden können.Contains classes that can be used to serialize objects into XML format documents or streams.

System.Text.Json
Enthält Klassen, die zum Serialisieren von Objekten in Dokumente oder Streams im JSON-Format verwendet werden können.Contains classes that can be used to serialize objects into JSON format documents or streams.