Événement
Créer des applications et des agents IA
17 mars, 21 h - 21 mars, 10 h
Rejoignez la série de rencontres pour créer des solutions IA évolutives basées sur des cas d’usage réels avec d’autres développeurs et experts.
S’inscrire maintenantCe navigateur n’est plus pris en charge.
Effectuez une mise à niveau vers Microsoft Edge pour tirer parti des dernières fonctionnalités, des mises à jour de sécurité et du support technique.
L’espace de noms System.Text.Json fournit des fonctionnalités de sérialisation vers et de désérialisation à partir de JavaScript Object Notation (JSON) (ou marshalling et unmarshalling). La sérialisation est le processus de conversion de l’état d’un objet, c’est-à-dire les valeurs de ses propriétés, dans une forme qui peut être stockée ou transmise. La forme sérialisée n’inclut aucune information sur les méthodes associées d’un objet. La désérialisation reconstruit un objet à partir de la forme sérialisée.
La conception de la bibliothèque System.Text.Json
met l’accent sur les performances élevées et la faible allocation de mémoire sur un ensemble complet de fonctionnalités. La prise en charge intégrée d’UTF-8 optimise le processus de lecture et d’écriture de texte JSON encodé en UTF-8, qui est l’encodage le plus répandu pour les données sur le web et les fichiers sur disque.
La bibliothèque fournit également des classes pour utiliser un modèle DOM (document object model) en mémoire. Cette fonctionnalité permet un accès aléatoire aux éléments d’un fichier ou d’une chaîne JSON.
Pour Visual Basic, il existe des limitations sur les parties de la bibliothèque que vous pouvez utiliser. Pour plus d’informations, consultez le Support Visual Basic.
La bibliothèque est intégrée dans le cadre du framework partagé pour .NET Core 3.0 et versions ultérieures. La fonctionnalité de génération de source est intégrée dans le cadre du framework partagé pour .NET 6 et versions ultérieures.
Pour les versions de framework antérieures à .NET Core 3.0, installez le package NuGet System.Text.Json. Le package prend en charge :
Important
System.Text.Json
ne prend pas en charge les API de sérialisation suivantes (que vous avez éventuellement déjà utilisées) :
Par défaut, System.Text.Json
collecte les métadonnées dont il a besoin pour accéder aux propriétés des objets pour la sérialisation et la désérialisation au moment du temps d’exécution en utilisant réflexion. En guise d’alternative, System.Text.Json
peut utiliser la fonctionnalité de génération de source C# pour améliorer les performances, réduire l’utilisation de la mémoire privée et faciliter le découpage d’assembly, ce qui réduit la taille de l’application.
Pour plus d’informations, voir Réflexion et génération de sources.
Pour plus d’informations sur les menaces de sécurité qui ont été prises en compte lors de la conception de JsonSerializer et sur la façon dont elles peuvent être atténuées, consultez Modèle de menace System.Text.Json
.
Le sérialiseur System.Text.Json
a été conçu en gardant à l’esprit la sécurité des threads. En pratique, cela signifie qu’une fois verrouillées, les instances JsonSerializerOptions peuvent être partagées de façon sécurisée entre plusieurs threads. JsonDocument fournit une représentation DOM thread-safe, immuable et dans .NET 8 (et les versions ultérieures), pour les valeurs JSON.
Commentaires sur .NET
.NET est un projet open source. Sélectionnez un lien pour fournir des commentaires:
Événement
Créer des applications et des agents IA
17 mars, 21 h - 21 mars, 10 h
Rejoignez la série de rencontres pour créer des solutions IA évolutives basées sur des cas d’usage réels avec d’autres développeurs et experts.
S’inscrire maintenantFormation
Parcours d’apprentissage
Accéder aux données et les gérer à l’aide des kits SDK Azure Cosmos DB for NoSQL - Training
Accéder aux données et les gérer à l’aide des kits SDK Azure Cosmos DB for NoSQL
Documentation
Comment sérialiser JSON dans C# - .NET
Découvrez comment utiliser l’espace de noms System.Text.Json pour sérialiser vers JSON dans .NET. Inclut un exemple de code.
Migrer de Newtonsoft.Json vers System.Text.Json - .NET
Découvrir les différences entre Newtonsoft.Json et System.Text.Json, mais également comment effectuer une migration vers System.Text.Json.
Comment désérialiser JSON dans C# - .NET
Découvrez comment utiliser l’espace de noms System.Text.Json pour désérialiser à partir de JSON dans .NET. Inclut un exemple de code.
Types pris en charge dans System.Text.Json - .NET
Découvrez quels types sont pris en charge pour la sérialisation par les API de l’espace de noms System.Text.Json.