System.Runtime.Serialization Namespace
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Enthält Klassen, die zum Serialisieren und Deserialisieren von Objekten verwendet werden können. Serialisierung ist der Prozess der Konvertierung eines Objekts oder eines Diagramms von Objekten in eine lineare Bytesequenz für speicher- oder übertragung an einen anderen Speicherort. Die Deserialisierung ist der Prozess der Aufnahme gespeicherter Informationen und das Neuerstellen von Objekten daraus.
Klassen
| Name | Beschreibung |
|---|---|
| CollectionDataContractAttribute |
Wenn sie auf einen Sammlungstyp angewendet wird, wird die benutzerdefinierte Spezifikation der Sammlungselementelemente aktiviert. Dieses Attribut kann nur auf Typen angewendet werden, die vom DataContractSerializer als gültige serialisierbare Auflistungen erkannt werden. |
| ContractNamespaceAttribute |
Gibt den CLR-Namespace und den XML-Namespace des Datenvertrags an. |
| DataContractAttribute |
Gibt an, dass der Typ einen Datenvertrag definiert oder implementiert und von einem Serialisierer serialisierbar ist, z. B. die DataContractSerializer. Um ihren Typ serialisierbar zu machen, müssen Typautoren einen Datenvertrag für ihren Typ definieren. |
| DataContractResolver |
Stellt einen Mechanismus zum dynamischen Zuordnen von Typen zu und von |
| DataContractSerializer |
Serialisiert und deserialisiert eine Instanz eines Typs in einen XML-Datenstrom oder -dokument mithilfe eines bereitgestellten Datenvertrags. Diese Klasse kann nicht vererbt werden. |
| DataContractSerializerExtensions |
Erweitert die DataContractSerializer Klasse durch Bereitstellen von Methoden zum Festlegen und Abrufen eines ISerializationSurrogateProvider. |
| DataContractSerializerSettings |
Gibt die Datenvertrags-Serialisierungseinstellungen an. |
| DataMemberAttribute |
Wenn sie auf das Element eines Typs angewendet wird, gibt es an, dass das Mitglied Teil eines Datenvertrags ist und vom DataContractSerializerserialisierbar ist. |
| DateTimeFormat |
Gibt Datum-Uhrzeit-Formatoptionen an. |
| EnumMemberAttribute |
Gibt an, dass das Feld ein Enumerationselement ist und serialisiert werden soll. |
| ExportOptions |
Stellt die Optionen dar, die für ein XsdDataContractExporter. |
| ExtensionDataObject |
Speichert Daten aus einem Versionsdatenvertrag, der durch Hinzufügen neuer Mitglieder erweitert wurde. |
| Formatter |
Stellt Basisfunktionen für die Serialisierungsformatierer der Common Language Runtime bereit. |
| FormatterConverter |
Stellt eine Basisimplementierung der IFormatterConverter Schnittstelle dar, die die Convert Klasse und die IConvertible Schnittstelle verwendet. |
| FormatterServices |
Stellt statische Methoden zur Unterstützung der Implementierung einer Formatter Serialisierung bereit. Diese Klasse kann nicht vererbt werden. |
| IgnoreDataMemberAttribute |
Wenn sie auf das Element eines Typs angewendet wird, wird angegeben, dass das Mitglied nicht Teil eines Datenvertrags ist und nicht serialisiert wird. |
| ImportOptions |
Stellt die Optionen dar, die für ein XsdDataContractImporter. |
| InvalidDataContractException |
Die Ausnahme, die ausgelöst wird, wenn beim DataContractSerializerNetDataContractSerializer Serialisieren und Deserialisieren ein ungültiger Datenvertrag auftritt. |
| KnownTypeAttribute |
Gibt Typen an, die vom DataContractSerializer beim Serialisieren oder Deserialisieren eines bestimmten Typs erkannt werden sollen. |
| NetDataContractSerializer |
Serialisiert und deserialisiert eine Instanz eines Typs mithilfe der bereitgestellten .NET-Typen in XML-Datenstrom oder -Dokument. Diese Klasse kann nicht vererbt werden. |
| ObjectIDGenerator |
Generiert IDs für Objekte. |
| ObjectManager |
Verfolgt Objekte, während sie deserialisiert werden. |
| OnDeserializedAttribute |
Wenn sie auf eine Methode angewendet wird, wird die Methode unmittelbar nach der Deserialisierung eines Objekts in einem Objektdiagramm aufgerufen. Die Reihenfolge der Deserialisierung relativ zu anderen Objekten im Diagramm ist nicht deterministisch. |
| OnDeserializingAttribute |
Wenn sie auf eine Methode angewendet wird, wird angegeben, dass die Methode während der Deserialisierung eines Objekts in einem Objektdiagramm aufgerufen wird. Die Reihenfolge der Deserialisierung relativ zu anderen Objekten im Diagramm ist nicht deterministisch. |
| OnSerializedAttribute |
Wenn sie auf eine Methode angewendet wird, wird angegeben, dass die Methode nach der Serialisierung eines Objekts in einem Objektdiagramm aufgerufen wird. Die Reihenfolge der Serialisierung relativ zu anderen Objekten im Diagramm ist nicht deterministisch. |
| OnSerializingAttribute |
Wenn sie auf eine Methode angewendet wird, wird angegeben, dass die Methode während der Serialisierung eines Objekts in einem Objektdiagramm aufgerufen wird. Die Reihenfolge der Serialisierung relativ zu anderen Objekten im Diagramm ist nicht deterministisch. |
| OptionalFieldAttribute |
Gibt an, dass ein Feld in einem Serialisierungsstream fehlen kann, sodass die BinaryFormatter und die SoapFormatter keine Ausnahme auslöst. |
| SafeSerializationEventArgs |
Stellt Daten für das SerializeObjectState-Ereignis bereit. |
| SerializationBinder |
Ermöglicht Benutzern das Steuern des Ladens von Klassen und das Mandat, welche Klasse geladen werden soll. |
| SerializationException |
Die Ausnahme wird ausgelöst, wenn während der Serialisierung oder Deserialisierung ein Fehler auftritt. |
| SerializationInfo |
Speichert alle Daten, die zum Serialisieren oder Deserialisieren eines Objekts erforderlich sind. Diese Klasse kann nicht vererbt werden. |
| SerializationInfoEnumerator |
Stellt einen formatierfreundlichen Mechanismus zum Analysieren der Daten in SerializationInfobereit. Diese Klasse kann nicht vererbt werden. |
| SerializationObjectManager |
Verwaltet Serialisierungsprozesse zur Laufzeit. Diese Klasse kann nicht vererbt werden. |
| SurrogateSelector |
Unterstützt Formatierer bei der Auswahl des Serialisierungs-Surrogates, um den Serialisierungs- oder Deserialisierungsprozess zu delegieren. |
| XmlObjectSerializer |
Stellt die Basisklasse bereit, die zum Serialisieren von Objekten als XML-Datenströme oder -dokumente verwendet wird. Diese Klasse ist abstrakt. |
| XmlSerializableServices |
Enthält Methoden zum Lesen und Schreiben von XML. |
| XPathQueryGenerator |
Wenn eine Klasse, die einen Datenvertrag darstellt, und Metadaten, die ein Mitglied des Vertrags darstellen, erstellt eine XPath-Abfrage für das Element. |
| XsdDataContractExporter |
Ermöglicht die Transformation eines Satzes von .NET Typen, die in Datenverträgen in eine XML-Schemadatei (XSD) verwendet werden. |
| XsdDataContractImporter |
Ermöglicht die Transformation einer Gruppe von XML-Schemadateien (XSD) in Common Language Runtime (CLR)-Typen. |
Strukturen
| Name | Beschreibung |
|---|---|
| SerializationEntry |
Enthält den Wert, Typeund den Namen eines serialisierten Objekts. |
| StreamingContext |
Beschreibt die Quelle und das Ziel eines bestimmten serialisierten Datenstroms und stellt einen zusätzlichen aufruferdefinierten Kontext bereit. |
Schnittstellen
| Name | Beschreibung |
|---|---|
| IDataContractSurrogate |
Stellt die Methoden bereit, die zum Ersetzen eines Typs durch die DataContractSerializer Serialisierung, Deserialisierung und den Export und Import von XML-Schemadokumenten (XSD) erforderlich sind. |
| IDeserializationCallback |
Gibt an, dass eine Klasse benachrichtigt werden soll, wenn die Deserialisierung des gesamten Objektdiagramms abgeschlossen wurde. Diese Schnittstelle wird nicht aufgerufen, wenn Sie dies deserialisieren.XmlSerializer |
| IExtensibleDataObject |
Stellt eine Datenstruktur bereit, um zusätzliche Daten zu speichern, die während der XmlObjectSerializer Deserialisierung eines Typs auftreten, der mit dem DataContractAttribute Attribut gekennzeichnet ist. |
| IFormatter |
Stellt Funktionen zum Formatieren serialisierter Objekte bereit. |
| IFormatterConverter |
Stellt die Verbindung zwischen einer Instanz von SerializationInfo und der vom Formatierer bereitgestellten Klasse bereit, die am besten geeignet ist, um die Daten innerhalb der SerializationInfo. |
| IObjectReference |
Gibt an, dass die aktuelle Schnittstellenimplementierer ein Verweis auf ein anderes Objekt ist. |
| ISafeSerializationData |
Ermöglicht die Serialisierung von benutzerdefinierten Ausnahmedaten in sicherheitstransparenten Code. |
| ISerializable |
Ermöglicht es einem Objekt, seine eigene Serialisierung und Deserialisierung durch binäre und XML-Serialisierung zu steuern. |
| ISerializationSurrogate |
Implementiert eine Serialisierungsauswahl, mit der ein Objekt Serialisierung und Deserialisierung einer anderen durchführen kann. |
| ISerializationSurrogateProvider |
Stellt die Methoden bereit, die zum Erstellen eines Serialisierungs-Surrogates erforderlich sind, das die Erweiterung der DataContractSerializer. Während der Serialisierung und Deserialisierung wird ein Serialisierungs-Surrogate verwendet, um einen Typ für einen anderen zu ersetzen. |
| ISurrogateSelector |
Gibt eine Serialisierungsauswahlklasse an. |
Enumerationen
| Name | Beschreibung |
|---|---|
| EmitTypeInformation |
Gibt an, wie oft Typinformationen ausgegeben werden. |
| StreamingContextStates |
Definiert eine Reihe von Flags, die den Quell- oder Zielkontext für den Datenstrom während der Serialisierung angibt. |
Hinweise
Die ISerializable Schnittstelle bietet eine Möglichkeit, um Klassen ihr eigenes Serialisierungsverhalten zu steuern. Klassen im System.Runtime.Serialization.Formatters Namespace steuern die tatsächliche Formatierung verschiedener Datentypen, die in den serialisierten Objekten gekapselt sind.
Formatierer, die Objekte in ein bestimmtes Format serialisieren und deserialisieren, finden Sie im System.Runtime.Serialization.Formatters Namespace.