Convertir des objets en JSON et inversement en C#
Dans cette leçon, vous allez convertir un objet C# en chaîne JSON, puis recréer l'objet à partir de cette chaîne avec System.Text.Json.
Introduction
JSON est un format très répandu pour échanger des données entre applications, en particulier via des API. La bibliothèque System.Text.Json, incluse dans .NET, convertit les objets en JSON (sérialisation, serialize) et le JSON en objets (désérialisation, deserialize) avec de très bonnes performances.
La méthode JsonSerializer.Serialize convertit le record Product en chaîne JSON. La méthode Deserialize<Product> lit cette chaîne et recrée un objet Product. Le résultat peut être null si les données sont vides ou mal formées, c'est pourquoi le programme utilise l'opérateur ?. pour accéder à Name et Price. Le résultat affiché est Book: 12.5.
Exemple C# exécutable
using System;
using System.Text.Json;
record Product(string Name, decimal Price);
class Program
{
static void Main()
{
var json = JsonSerializer.Serialize(new Product("Book", 12.5m));
var product = JsonSerializer.Deserialize<Product>(json);
Console.WriteLine($"{product?.Name}: {product?.Price}");
}
}
Book: 12.5S'entraîner avec le débogueur
S'entraîner avec un défi
Utilisez le contenu de cette leçon pour résoudre un vrai problème. Chaque défi s'exécute dans le navigateur, avec des tests instantanés et une revue par l'IA.
- Somme d'un objet JSON plat Analysez un objet JSON plat dont les valeurs sont des entiers et additionnez les valeurs. Facile
- Construire un objet JSON Transformez des clés et des valeurs en une chaîne JSON d'objet, en échappant correctement les guillemets et les antislashs. Facile