Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Menyahseri JSON dengan Kekunci Dinamik dalam C# Menggunakan Kamus?

Bagaimanakah Saya Boleh Menyahseri JSON dengan Kekunci Dinamik dalam C# Menggunakan Kamus?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-17 10:31:09171semak imbas

How Can I Deserialize JSON with Dynamic Keys in C# Using a Dictionary?

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:

  1. 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.

  2. 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>
  3. 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>
  4. 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!

Kenyataan:
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