Freigeben über


JsonExtensionDataAttribute Klasse

Definition

Bei der Platzierung in einer Eigenschaft vom Typ IDictionary<TKey,TValue> werden alle Eigenschaften, die nicht über ein übereinstimmendes Element verfügen, während der Deserialisierung diesem Wörterbuch hinzugefügt und während der Serialisierung geschrieben.

public ref class JsonExtensionDataAttribute sealed : System::Text::Json::Serialization::JsonAttribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)]
public sealed class JsonExtensionDataAttribute : System.Text.Json.Serialization.JsonAttribute
[System.AttributeUsage(System.AttributeTargets.Property, AllowMultiple=false)]
public sealed class JsonExtensionDataAttribute : System.Text.Json.Serialization.JsonAttribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)>]
type JsonExtensionDataAttribute = class
    inherit JsonAttribute
[<System.AttributeUsage(System.AttributeTargets.Property, AllowMultiple=false)>]
type JsonExtensionDataAttribute = class
    inherit JsonAttribute
Public NotInheritable Class JsonExtensionDataAttribute
Inherits JsonAttribute
Vererbung
JsonExtensionDataAttribute
Attribute

Hinweise

Der Wert des Wörterbuchs TKey muss seinString, und TValue muss oder ObjectseinJsonElement.

Während der Deserialisierung wird bei Verwendung Objectvon ein JSON-Wert "null" als null Objektverweis behandelt, und bei Verwendung JsonElementvon wird ein "NULL" als JsonElement behandelt, wobei ValueKind auf JsonValueKind.Nullfestgelegt ist.

Während der Serialisierung ist der Name der Erweiterungsdateneigenschaft nicht im JSON-Code enthalten. Die in den Erweiterungsdaten enthaltenen Daten werden als Eigenschaften des JSON-Objekts serialisiert.

Wenn mehr als eine Eigenschaft für einen Typ mit diesem Erweiterungsdatensattribut vorhanden ist oder die Eigenschaft selbst nicht den richtigen IDictionary<TKey,TValue> Typ aufweist, wird während der ersten Serialisierung oder Deserialisierung dieses Typs eine InvalidOperationException ausgelöst.

Weitere Informationen finden Sie unter Behandeln von JSON-Überlauf mit System.Text.Json.

Konstruktoren

JsonExtensionDataAttribute()

Initialisiert eine neue Instanz der JsonExtensionDataAttribute-Klasse.

Eigenschaften

TypeId

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.

(Geerbt von Attribute)

Methoden

Equals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist.

(Geerbt von Attribute)
GetHashCode()

Gibt den Hashcode für diese Instanz zurück.

(Geerbt von Attribute)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()

Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob der Wert der Instanz der Standardwert für die abgeleitete Klasse ist.

(Geerbt von Attribute)
Match(Object)

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht.

(Geerbt von Attribute)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

(Geerbt von Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können.

(Geerbt von Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).

(Geerbt von Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.

(Geerbt von Attribute)

Gilt für: