Maison >développement back-end >C++ >Comment convertir JSON en un DataTable en C # à l'aide de newtonsoft.json?

Comment convertir JSON en un DataTable en C # à l'aide de newtonsoft.json?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-26 20:46:10525parcourir

How to Convert JSON to a DataTable in C# using Newtonsoft.Json?

Convertir efficacement JSON en DataTable en C# avec Newtonsoft.Json

Ce guide présente une méthode simplifiée pour transformer des données JSON en DataTable à l'aide de la puissante bibliothèque Newtonsoft.Json en C#. Cette approche évite le besoin de classes C# personnalisées intermédiaires, simplifiant ainsi le processus de conversion.

Voici l'implémentation du code :

<code class="language-csharp">using Newtonsoft.Json;

// Example JSON data
string jsonData = "[{\"id\":\"10\",\"name\":\"User\",\"add\":false,\"edit\":true,\"authorize\":true,\"view\":true},{\"id\":\"11\",\"name\":\"Group\",\"add\":true,\"edit\":false,\"authorize\":false,\"view\":true},{\"id\":\"12\",\"name\":\"Permission\",\"add\":true,\"edit\":true,\"authorize\":true,\"view\":true}]";

// Direct JSON to DataTable conversion
DataTable dataTable = (DataTable)JsonConvert.DeserializeObject(jsonData, typeof(DataTable));

// Displaying the DataTable contents
Console.WriteLine("---------------------------------------------------------------------");
Console.WriteLine("ID    |  Name     |  Add    |   Edit  | View   | Authorize");
Console.WriteLine("---------------------------------------------------------------------");
foreach (DataRow row in dataTable.Rows)
{
    Console.WriteLine($"{row["id"]}    | {row["name"]}    | {row["add"]}    | {row["edit"]}  | {row["view"]}   |  {row["authorize"]}");
}</code>

La méthode JsonConvert.DeserializeObject de Newtonsoft gère directement la désérialisation, en spécifiant typeof(DataTable) comme type de cible. Cela rend le code concis et efficace. Après la conversion, les méthodes DataTable standard permettent une manipulation et un accès faciles aux données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn