Mengendalikan Kekunci JSON Dinamik dalam C# dengan Kamus
Data JSON selalunya memberikan cabaran apabila berurusan dengan kunci yang tidak dapat diramalkan. Artikel ini memfokuskan pada senario biasa: kunci punca statik ("harian" dalam contoh ini) yang mengandungi kekunci berasaskan cap masa yang dinamik. Penyelesaiannya melibatkan penggunaan kamus untuk penyahserikatan yang fleksibel.
Berikut ialah pendekatan yang mantap:
Manfaatkan Kamus untuk Fleksibiliti: Daripada mencipta struktur kelas yang tegar, gunakan Dictionary<string, object>
untuk menampung kekunci dinamik. Ini membolehkan pengendalian kekunci yang tidak diketahui dengan lancar pada masa jalan.
Deserialize dengan JavaScriptSerializer
: Gunakan kelas JavaScriptSerializer
untuk menghuraikan rentetan JSON ke dalam kamus. Kod di bawah menunjukkan ini:
<code class="language-csharp"> var deserializer = new JavaScriptSerializer(); var dictionary = deserializer.Deserialize<Dictionary<string, object>>(json);</code>
Akses Kamus Bersarang: Kekunci dinamik bersarang di bawah kekunci "harian". Ekstrak kamus bersarang ini menggunakan:
<code class="language-csharp"> var dailyData = dictionary["daily"] as Dictionary<string, object>;</code>
Lelaran dan Akses Data: Akhir sekali, ulang melalui kamus dailyData
untuk mengakses cap masa dinamik dan nilai yang berkaitan:
<code class="language-csharp"> foreach (var kvp in dailyData) { string timestamp = kvp.Key; object value = kvp.Value; Console.WriteLine($"{timestamp}: {value}"); }</code>
Kaedah ini menyediakan cara yang fleksibel dan cekap untuk memproses JSON dengan kunci dinamik, memastikan akses mudah kepada data asas tanpa memerlukan pengetahuan awal tentang struktur kunci.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyahseri JSON dengan Kekunci Dinamik dalam C# Menggunakan Kamus?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!