Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menukar Jadual Data kepada String JSON dengan Array 'rekod' dalam C#?

Bagaimana untuk Menukar Jadual Data kepada String JSON dengan Array 'rekod' dalam C#?

Patricia Arquette
Patricia Arquetteasal
2025-01-21 16:36:10387semak imbas

How to Convert a DataTable to a JSON String with a

C# DataTable ke Penukaran JSON: Mencapai Format Yang Diingini

Panduan ini menunjukkan cara menukar C# DataTable kepada rentetan JSON dengan struktur tertentu, mengelakkan format objek JSON lalai. Format sasaran ialah objek JSON yang mengandungi tatasusunan "rekod" objek rekod individu.

Langkah:

  1. Isi Jadual Data: Mulakan dengan mencipta Jadual Data dan isikannya dengan data daripada pangkalan data anda (atau mana-mana sumber lain).

  2. Gunakan JavaScriptSerializer: Gunakan kelas JavaScriptSerializer untuk mengendalikan siri JSON.

  3. Buat Senarai Kamus: Bina senarai untuk menyimpan setiap baris Jadual Data sebagai kamus.

  4. Lelaran dan Isi Kamus: Gelung setiap DataRow dalam Jadual Data. Untuk setiap baris:

    • Buat kamus baharu.
    • Lelar melalui setiap DataColumn dalam Jadual Data.
    • Tambahkan nama lajur (col.ColumnName) sebagai kunci dan nilai lajur yang sepadan (dr[col]) sebagai nilai pada kamus.
    • Tambahkan kamus yang lengkap pada senarai kamus.
  5. Sirikan Senarai: Akhir sekali, sirikan senarai kamus menggunakan JavaScriptSerializer, bungkusnya dalam objek JSON dengan sifat "rekod".

Contoh Kod:

<code class="language-csharp">using System.Web.Script.Serialization;
using System.Data;
using System.Collections.Generic;

public string ConvertDataTableToJson()
{
    DataTable dataTable = new DataTable();
    // Fill dataTable with data from your database

    JavaScriptSerializer serializer = new JavaScriptSerializer();
    List<Dictionary<string, object>> records = new List<Dictionary<string, object>>();

    foreach (DataRow row in dataTable.Rows)
    {
        Dictionary<string, object> record = new Dictionary<string, object>();
        foreach (DataColumn column in dataTable.Columns)
        {
            record.Add(column.ColumnName, row[column]);
        }
        records.Add(record);
    }

    return serializer.Serialize(new { records = records });
}</code>

Kod yang disemak ini menyediakan kaedah yang jelas dan cekap untuk menukar Jadual Data kepada format JSON yang ditentukan, memastikan setiap rekod diwakili dengan betul dalam tatasusunan "rekod". Ingat untuk menambah using pernyataan yang diperlukan.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Jadual Data kepada String JSON dengan Array 'rekod' dalam C#?. 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