DataTable in JSON in C# konvertieren
In diesem Artikel wird erläutert, wie DataTable-Objekte in C# in das JSON-Format konvertiert werden. Das Problem beginnt mit dem Abrufen von Datensätzen aus der Datenbank in eine DataTable, der anschließenden Konvertierung in ein JSON-Objekt und der Rückgabe an eine JavaScript-Funktion. Das erforderliche JSON-Format unterscheidet sich jedoch von der aktuellen Ausgabe. Dieser Artikel bietet eine Lösung zum Erreichen des gewünschten JSON-Formats.
Um dieses Problem zu lösen, können Sie verschiedene Serialisierungsmethoden verwenden. Anstatt JsonConvert.SerializeObject
zu verwenden, sollten Sie System.Web.Script.Serialization
im JavaScriptSerializer
-Namespace verwenden. Diese Alternative ermöglicht eine bessere Kontrolle über die JSON-Ausgabestruktur.
Hier ist ein Beispiel für die Implementierung dieser Lösung:
<code class="language-csharp">public string ConvertDataTabletoString() { DataTable dt = new DataTable(); using (SqlConnection con = new SqlConnection("YOUR_CONNECTION_STRING")) { using (SqlCommand cmd = new SqlCommand("YOUR_QUERY", con)) { con.Open(); SqlDataAdapter da = new SqlDataAdapter(cmd); da.Fill(dt); System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer(); List<Dictionary<string, object>> rows = new List<Dictionary<string, object>>(); Dictionary<string, object> row; foreach (DataRow dr in dt.Rows) { row = new Dictionary<string, object>(); foreach (DataColumn col in dt.Columns) { row.Add(col.ColumnName, dr[col]); } rows.Add(row); } return serializer.Serialize(rows); } } }</code>
Das obige ist der detaillierte Inhalt vonWie kann ich eine C#-Datentabelle effizient in ein benutzerdefiniertes JSON-Format konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!