Nyahsiri objek kanak-kanak dengan nama kunci dinamik
Apabila berurusan dengan data JSON yang mengandungi sub-objek dengan nama kunci dinamik (biasanya kekunci berangka), mungkin sukar untuk menyahsirikannya menggunakan teknik JSON.NET standard.
Untuk menyelesaikan masalah ini, anda boleh membuat penukar tersuai untuk mengendalikan nama kunci dinamik dan menyahsiri nilai ke dalam bekas yang ditaip. Penukar tersuai berikut TypedExtensionDataConverter<T>
melaksanakan fungsi ini:
<code class="language-csharp">public class TypedExtensionDataConverter<T> : JsonConverter { // ... (代码已省略) }</code>
Penukar ini kemudiannya boleh digunakan dalam struktur kelas untuk menentukan sifat yang mengandungi sub-objek dengan nama kunci dinamik:
<code class="language-csharp">[JsonConverter(typeof(TypedExtensionDataConverter<User>))] class User { // ... (代码已省略) }</code>
Dengan pendekatan ini, sub-objek boleh dinyahsiri dan disimpan dalam bekas yang ditaip (dalam kes ini Dictionary<string, User>
), menyediakan cara berstruktur dan mudah diakses untuk bekerja dengan data.
Atas ialah kandungan terperinci Bagaimana untuk Menyahserialisasikan Objek Kanak-kanak JSON dengan Nama Kunci Dinamik dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!