Bagikan melalui


JsonExtensionDataAttribute Kelas

Definisi

Ketika ditempatkan pada properti jenis IDictionary<TKey,TValue>, properti apa pun yang tidak memiliki anggota yang cocok ditambahkan ke kamus tersebut selama deserialisasi dan ditulis selama serialisasi.

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
Warisan
JsonExtensionDataAttribute
Atribut

Keterangan

Nilai kamus TKey harus String, dan TValue harus JsonElement atau Object.

Selama deserialisasi, saat menggunakan Object, nilai JSON "null" diperlakukan sebagai null referensi objek, dan saat menggunakan JsonElement, "null" diperlakukan sebagai JsonElement dengan ValueKind diatur ke JsonValueKind.Null.

Selama serialisasi, nama properti data ekstensi tidak disertakan dalam JSON; data yang terkandung dalam data ekstensi diserialisasikan sebagai properti objek JSON.

Jika ada lebih dari satu properti pada jenis dengan atribut data ekstensi ini, atau jika properti itu sendiri bukan jenis yang benar IDictionary<TKey,TValue> , InvalidOperationException akan dilemparkan selama serialisasi atau deserialisasi pertama dari jenis tersebut.

Untuk informasi selengkapnya, lihat Cara menangani JSON luapan dengan System.Text.Json.

Konstruktor

JsonExtensionDataAttribute()

Menginisialisasi instans baru kelas JsonExtensionDataAttribute.

Properti

TypeId

Ketika diimplementasikan di kelas turunan, mendapatkan pengidentifikasi unik untuk ini Attribute.

(Diperoleh dari Attribute)

Metode

Equals(Object)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
GetHashCode()

Mengembalikan kode hash untuk instans ini.

(Diperoleh dari Attribute)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
IsDefaultAttribute()

Ketika ditimpa di kelas turunan, menunjukkan apakah nilai instans ini adalah nilai default untuk kelas turunan.

(Diperoleh dari Attribute)
Match(Object)

Saat ditimpa di kelas turunan, mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

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

Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Mengambil informasi jenis untuk objek, yang dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1).

(Diperoleh dari Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Menyediakan akses ke properti dan metode yang diekspos oleh objek.

(Diperoleh dari Attribute)

Berlaku untuk