Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Menyahserialisasikan JSON dengan betul kepada Kelas C# POCO Menggunakan JsonConvert.DeserializeObject?

Bagaimana untuk Menyahserialisasikan JSON dengan betul kepada Kelas C# POCO Menggunakan JsonConvert.DeserializeObject?

Susan Sarandon
Lepaskan: 2025-01-15 11:17:48
asal
442 orang telah melayarinya

How to Properly Deserialize JSON to a C# POCO Class Using JsonConvert.DeserializeObject?

Deserialize JSON ke kelas C# POCO menggunakan JsonConvert.DeserializeObject

Soalan:

Apabila cuba menggunakan JsonConvert.DeserializeObject untuk menyahsiri data JSON kepada kelas C# POCO, pengecualian dilemparkan disebabkan penyahserialisasian yang salah bagi sifat tertentu.

Jawapan:

Untuk menggunakan JsonConvert.DeserializeObject untuk menyahsiri JSON dengan betul kepada kelas POCO, adalah penting untuk memastikan bahawa nama harta dalam kelas sepadan dengan nama harta dalam data JSON. Selain itu, langkah berikut mungkin diperlukan:

  1. Gunakan atribut JsonProperty: Gunakan atribut JsonProperty untuk menentukan nama atribut JSON yang sepadan dengan atribut kelas tertentu. Ini amat berguna apabila nama sifat JSON berbeza daripada nama sifat kelas.
  2. Pertimbangkan jenis atribut: Sahkan bahawa jenis data setiap atribut dalam kelas POCO adalah konsisten dengan jenis yang dijangkakan dalam data JSON. Sebagai contoh, jika data JSON mengandungi tatasusunan, sifat yang sepadan dalam kelas POCO hendaklah diisytiharkan sebagai senarai.

Contoh:

Pertimbangkan contoh berikut di mana sifat Akaun dalam kelas Pengguna perlu dinyahsiri daripada objek JSON:

<code class="language-csharp">public class User
{
    [JsonProperty("accounts")]
    public Account Accounts { get; set; }

    // 其他User属性此处省略,以简洁起见
}

public class Account
{
    public string github { get; set; }
}</code>
Salin selepas log masuk

Dengan menggunakan atribut JsonProperty dan mengisytiharkan harta Akaun sebagai objek Akaun tertentu, penyahserialisasian akan mengendalikan objek JSON untuk harta itu dengan betul.

Atas ialah kandungan terperinci Bagaimana untuk Menyahserialisasikan JSON dengan betul kepada Kelas C# POCO Menggunakan JsonConvert.DeserializeObject?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan