Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Menyahserialisasi Jenis Terbitan dengan Cekap dengan Json.Net?

Bagaimana untuk Menyahserialisasi Jenis Terbitan dengan Cekap dengan Json.Net?

Patricia Arquette
Lepaskan: 2025-01-21 18:38:09
asal
265 orang telah melayarinya

How to Deserialize Derived Types Efficiently with Json.Net?

Teknik penyahserikatan jenis terbitan Json.Net

Json.Net ialah alat pensirilan dan penyahsirilan JSON yang berkuasa, tetapi apabila menangani jenis terbitan, penyahsiran menjadi lebih rumit. Artikel ini meneroka cara menggunakan Json.Net dengan cekap untuk menyahsiri jenis terbitan.

Taip pemprosesan nama

Penyahserikatan yang berjaya bagi jenis terbitan memerlukan pengendalian nama jenis didayakan. Tetapan ini mengarahkan Json.Net untuk memasukkan nama jenis dalam strim JSON bersiri. Secara lalai, pengendalian nama jenis dilumpuhkan, yang boleh membawa kepada hasil penyahserikatan yang tidak jelas apabila berurusan dengan jenis terbitan.

Dayakan pengendalian nama jenis

Untuk mendayakan pengendalian nama jenis, anda boleh menentukan JsonSerializerSettings dalam objek TypeNameHandling.All. Contohnya adalah seperti berikut:

<code class="language-csharp">JsonSerializerSettings settings = new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All };</code>
Salin selepas log masuk

Pensirilan dan Penyahserikatan

Dengan pengendalian nama jenis didayakan, jenis terbitan boleh disiri dan dinyahsiri seperti berikut:

<code class="language-csharp">// 序列化
string Serialized = JsonConvert.SerializeObject(inheritanceList, settings);

// 反序列化
List<BaseClass> deserializedList = JsonConvert.DeserializeObject<List<BaseClass>>(Serialized, settings);</code>
Salin selepas log masuk

Nota Penting

Mendayakan pengendalian nama jenis boleh menyebabkan beberapa masalah:

  • Saiz data meningkat: Strim JSON bersiri akan menjadi lebih besar kerana ia kini mengandungi nama jenis.
  • Impak prestasi: Deserialisasi mungkin lebih perlahan kerana ia melibatkan membandingkan nama jenis dengan jenis berdaftar yang tersedia.

Ringkasan

Dengan mendayakan pengendalian nama jenis dalam Json.Net, jenis terbitan boleh dinyahsiri dengan cekap dan hierarki warisannya dipelihara. Ciri ini membolehkan anda mengendalikan struktur data yang kompleks dengan cara yang mudah dan boleh dipercayai.

Atas ialah kandungan terperinci Bagaimana untuk Menyahserialisasi Jenis Terbitan dengan Cekap dengan Json.Net?. 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