Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya Boleh Menyahserialisasikan JSON Bersarang ke dalam Objek C# Ditaip?
Penyahserialisasian JSON Bersarang dengan Objek C# Ditaip
Menyahserialisasi JSON bersarang menjadi Kamus rata
ObjectAsPrimitiveConverter
Kod berikut menyediakan JsonConverter tersuai bernama ObjectAsPrimitiveConverter:
public class ObjectAsPrimitiveConverter : JsonConverter<object> { // ... (converter implementation) }
Penukar Konfigurasi
Untuk mengkonfigurasi penukar, nyatakan FloatFormat yang dikehendaki (berganda atau perpuluhan), UnknownNumberFormat (ralat atau JsonElement) dan ObjectFormat (ExpandoObject atau Dictionary
var options = new JsonSerializerOptions { Converters = { new ObjectAsPrimitiveConverter(...) }, WriteIndented = true, };
Deserialisasi kepada Objek
Untuk menyahsiri JSON bersarang kepada objek (atau dinamik jika menggunakan ExpandoObject), gunakan:
dynamic d = JsonSerializer.Deserialize<dynamic>(json, options);
Penyesuaian
The penukar boleh disesuaikan untuk menyokong jenis angka dan format objek yang berbeza. Selain itu, ia boleh diperluaskan untuk mengendalikan nombor JSON yang tidak disokong dengan lebih anggun.
Kesimpulan
Dengan melaksanakan JsonConverter tersuai, anda boleh mencapai penyahserialisasian khusus jenis objek JSON bersarang ke dalam struktur data hierarki dengan jenis C# yang betul untuk setiap sifat.
Atas ialah kandungan terperinci Bagaimanakah saya Boleh Menyahserialisasikan JSON Bersarang ke dalam Objek C# Ditaip?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!