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:
Isi Jadual Data: Mulakan dengan mencipta Jadual Data dan isikannya dengan data daripada pangkalan data anda (atau mana-mana sumber lain).
Gunakan JavaScriptSerializer: Gunakan kelas JavaScriptSerializer
untuk mengendalikan siri JSON.
Buat Senarai Kamus: Bina senarai untuk menyimpan setiap baris Jadual Data sebagai kamus.
Lelaran dan Isi Kamus: Gelung setiap DataRow
dalam Jadual Data. Untuk setiap baris:
DataColumn
dalam Jadual Data.col.ColumnName
) sebagai kunci dan nilai lajur yang sepadan (dr[col]
) sebagai nilai pada kamus.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!