Objekte in JSON umwandeln und zurück in C#
In dieser Lektion wandelst du mit System.Text.Json ein C#-Objekt in einen JSON-String um und erzeugst das Objekt aus diesem String neu.
Einführung
JSON ist ein verbreitetes Format, um Daten zwischen Anwendungen auszutauschen, besonders über APIs. Die in .NET enthaltene Bibliothek System.Text.Json wandelt Objekte in JSON (Serialisierung, serialize) und JSON zurück in Objekte (Deserialisierung, deserialize) mit hoher Leistung um.
Die Methode JsonSerializer.Serialize wandelt den Record Product in einen JSON-String um. Die Methode Deserialize<Product> liest diesen String und erzeugt ein Product-Objekt neu. Das Ergebnis kann null sein, wenn die Daten leer oder falsch formatiert sind, deshalb verwendet das Programm beim Zugriff auf Name und Price den Operator ?.. Die Ausgabe ist Book: 12.5.
Ausführbares C#-Beispiel
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.5Mit dem Debugger üben
Mit einer Challenge üben
Nutze den Inhalt dieser Lektion, um ein echtes Problem zu lösen. Jede Challenge läuft im Browser, mit sofortigen Tests und einem KI-Review.
- Ein flaches JSON-Objekt summieren Parsen Sie ein flaches JSON-Objekt, dessen Werte ganze Zahlen sind, und addieren Sie die Werte. Einfach
- Ein JSON-Objekt bauen Wandle Schlüssel und Werte in einen JSON-Objekt-String um und escapiere dabei Anführungszeichen und Backslashes korrekt. Einfach