JavaScriptConverter.Deserialize Metode

Definisi

Ketika ditimpa dalam kelas turunan, mengonversi kamus yang disediakan menjadi objek dari jenis yang ditentukan.

public:
 abstract System::Object ^ Deserialize(System::Collections::Generic::IDictionary<System::String ^, System::Object ^> ^ dictionary, Type ^ type, System::Web::Script::Serialization::JavaScriptSerializer ^ serializer);
public abstract object Deserialize(System.Collections.Generic.IDictionary<string,object> dictionary, Type type, System.Web.Script.Serialization.JavaScriptSerializer serializer);
abstract member Deserialize : System.Collections.Generic.IDictionary<string, obj> * Type * System.Web.Script.Serialization.JavaScriptSerializer -> obj
Public MustOverride Function Deserialize (dictionary As IDictionary(Of String, Object), type As Type, serializer As JavaScriptSerializer) As Object

Parameter

dictionary
IDictionary<String,Object>

Instans IDictionary<TKey,TValue> data properti yang disimpan sebagai pasangan nama/nilai.

type
Type

Jenis objek yang dihasilkan.

Mengembalikan

Objek yang dideserialisasi.

Catatan Bagi Implementer

Metode ini Deserialize(IDictionary<String,Object>, Type, JavaScriptSerializer) melakukan iterasi melalui nilai dalam dictionary parameter untuk membuat instans jenis yang diminta dalam type parameter. Meskipun pengonversi dapat langsung menggunakan nilai dari dictionary, sebaiknya implementer konverter menggunakan metode sebagai gantinya ConvertToType<T>(Object) . Pengonversi harus memanggil metode instans ini yang JavaScriptSerializer tersedia dari serializer parameter .

Metode ini ConvertToType<T>(Object) memungkinkan pengonversi untuk meneruskan nilai properti dari dictionary, lalu mengembalikan nilai dari jenis yang diharapkan. Dalam beberapa kasus, pengonversi untuk jenis kustom mungkin bekerja dengan properti yang memiliki pengonversi terdaftar (misalnya, jenis A memiliki properti tipe B, dan jenis B juga dikaitkan dengan pengonversi kustom). Dalam hal ini, pemanggilan ConvertToType<T>(Object) memastikan bahwa pengonversi kustom akan secara rekursif dipanggil untuk data properti yang terkandung dalam kamus. Ketika konverter telah melakukan iterasi melalui semua entri dalam kamus, konverter mengembalikan instans yang dibangun dari jenis target.

Jika pengonversi mengalami masalah selama deserialisasi, itu harus melemparkan InvalidOperationException kesalahan yang menjelaskan masalah.

Berlaku untuk