Partager via


System.Text.Json.Serialization Espace de noms

Contient des classes qui permettent de personnaliser et d’étendre la sérialisation et la désérialisation d’objets dans des documents ou des flux au format JSON, via un modèle d’attribut ou des convertisseurs de type.

Classes

BinaryDataJsonConverter

Sérialise les BinaryData instances en tant que chaînes JSON Base64.

JsonAttribute

Fournit la classe de base pour les attributs de sérialisation.

JsonConstructorAttribute

Lorsqu’il est placé sur un constructeur, indique que le constructeur doit être utilisé pour créer des instances du type lors de la désérialisation.

JsonConverter

Convertit un objet ou une valeur vers ou depuis JSON.

JsonConverter<T>

Convertit un objet ou une valeur vers ou depuis JSON.

JsonConverterAttribute

En cas de placement sur une propriété ou un type, spécifie le type de convertisseur à utiliser.

JsonConverterFactory

Prend en charge la conversion de plusieurs types en utilisant un modèle de fabrique.

JsonDerivedTypeAttribute

Lorsqu’il est placé sur une déclaration de type, indique que le sous-type spécifié doit être choisi dans la sérialisation polymorphe.

JsonExtensionDataAttribute

Lorsqu’elles sont placées sur une propriété de type IDictionary<TKey,TValue>, toutes les propriétés qui n’ont pas de membre correspondant sont ajoutées à ce dictionnaire pendant la désérialisation et écrites pendant la sérialisation.

JsonIgnoreAttribute

Empêche une propriété d’être sérialisée ou désérialisée.

JsonIncludeAttribute

Indique que le membre doit être inclus pour la sérialisation et la désérialisation.

JsonNumberEnumConverter<TEnum>

Convertisseur pour convertir des énumérations vers et à partir de valeurs numériques.

JsonNumberHandlingAttribute

Lorsqu’il est placé sur un type, une propriété ou un champ, indique quels paramètres JsonNumberHandling doivent être utilisés lors de la sérialisation ou de la désérialisation des nombres.

JsonObjectCreationHandlingAttribute

Détermine la façon dont la désérialisation gère la création d’objets pour les champs ou les propriétés.

JsonPolymorphicAttribute

Lorsqu’il est placé sur un type, indique que le type doit être sérialisé polymorphiquement.

JsonPropertyNameAttribute

Spécifie le nom de la propriété qui est présent dans le JSON lors de la sérialisation et de la désérialisation.

JsonPropertyOrderAttribute

Spécifie l’ordre de propriété présent dans le JSON lors de la sérialisation. Les valeurs inférieures sont sérialisées en premier. Si l’attribut n’est pas spécifié, la valeur par défaut est 0.

JsonRequiredAttribute

Indique que le membre annoté doit se lier à une propriété JSON lors de la désérialisation.

JsonSerializableAttribute

Indique au générateur source System.Text.Json de générer du code source pour optimiser les performances lors de la sérialisation et de la désérialisation des instances du type et des types spécifiés dans son graphe d’objets.

JsonSerializerContext

Fournit des métadonnées sur un ensemble de types pertinents pour la sérialisation JSON.

JsonSourceGenerationOptionsAttribute

Indique au générateur source System.Text.Json de supposer que les options spécifiées seront utilisées au moment de l’exécution via JsonSerializerOptions.

JsonStringEnumConverter

Convertit les valeurs d’énumération en chaînes et inversement.

JsonStringEnumConverter<TEnum>

Convertir en énumérations vers et à partir de chaînes.

JsonUnmappedMemberHandlingAttribute

Lorsqu’il est placé sur un type, détermine la JsonUnmappedMemberHandling configuration du type spécifique, en remplaçant le paramètre global UnmappedMemberHandling .

ReferenceHandler

Définit la façon dont le JsonSerializer traite les références sur la sérialisation et la désérialisation.

ReferenceHandler<T>

Définit la façon dont le JsonSerializer traite les références sur la sérialisation et la désérialisation.

ReferenceResolver

Définit la façon dont le JsonSerializer traite les références sur la sérialisation et la désérialisation. Définit le comportement principal de la préservation des références en cas de sérialisation et désérialisation.

Interfaces

IJsonOnDeserialized

Spécifie que la méthode du type JSON doit être OnDeserialized() appelée après la désérialisation.

IJsonOnDeserializing

Spécifie que la méthode du type doit être OnDeserializing() appelée avant que la désérialisation ne se produise.

IJsonOnSerialized

Spécifie que la méthode du type doit être OnSerialized() appelée après la sérialisation.

IJsonOnSerializing

Spécifie que la méthode du type doit être OnSerializing() appelée avant la sérialisation.

Énumérations

JsonIgnoreCondition

Contrôle la façon dont le JsonIgnoreAttribute ignore les propriétés sur la sérialisation et la désérialisation.

JsonKnownNamingPolicy

à utiliser au moment de JsonNamingPolicy l’exécution.

JsonNumberHandling

Détermine comment JsonSerializer gère les nombres lors de la sérialisation et de la désérialisation.

JsonObjectCreationHandling

Détermine la façon dont la désérialisation gère la création d’objets pour les champs ou les propriétés.

JsonSourceGenerationMode

Mode de génération pour le générateur source System.Text.Json.

JsonUnknownDerivedTypeHandling

Définit la façon dont les objets d’un type d’exécution dérivé qui n’ont pas été déclarés explicitement pour la sérialisation polymorphe doivent être gérés.

JsonUnknownTypeHandling

Définit la façon dont la désérialisation d’un Object type déclaré en tant que est gérée pendant la désérialisation.

JsonUnmappedMemberHandling

Détermine comment JsonSerializer gère les propriétés JSON qui ne peuvent pas être mappées à un membre .NET spécifique lors de la désérialisation des types d’objets.