Seseorang mungkin menghadapi situasi di mana struktur JSON yang dikehendaki berbeza sedikit daripada format yang dijangkakan. Isu ini timbul dalam kes khusus tatasusunan objek JSON, contohnya, seperti yang ditunjukkan di bawah:
[ { "customer":{ ... } }, { "customer":{ ... } } ]
Malangnya, Json.net menjangkakan struktur yang lebih konvensional seperti ini:
{ "customer": { ... } }
Oleh itu, bagaimanakah kita boleh mendamaikan ketidakkonsistenan ini?
Penyelesaian terletak pada mencipta model tersuai yang selaras dengan struktur JSON sebenar. Dengan mentakrifkan kelas seperti CustomerJson dan Customer, kami boleh memetakan sifat JSON ke medan tertentu:
public class CustomerJson { [JsonProperty("customer")] public Customer Customer { get; set; } } public class Customer { [JsonProperty("first_name")] public string Firstname { get; set; } [JsonProperty("last_name")] public string Lastname { get; set; } ... }
Dengan model tersuai ini, kami boleh menyahsiri JSON yang disediakan dengan mudah menggunakan:
JsonConvert.DeserializeObject<List<CustomerJson>>(json);
Akhir sekali, untuk mendapatkan maklumat menyeluruh tentang pensirilan dan penyahsirilan JSON, rujuk dokumentasi rasmi.
Atas ialah kandungan terperinci Bagaimana untuk Menyahsiri Tatasusunan Objek JSON dengan Struktur Tidak Padan Menggunakan Json.net?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!