JsonSerializerOptions Classe

Définition

Fournit des options à utiliser avec JsonSerializer.

public ref class JsonSerializerOptions sealed
public sealed class JsonSerializerOptions
type JsonSerializerOptions = class
Public NotInheritable Class JsonSerializerOptions
Héritage
JsonSerializerOptions

Remarques

Pour plus d’informations, consultez Comment sérialiser et désérialiser JSON.

Constructeurs

Nom Description
JsonSerializerOptions()

Initialise une nouvelle instance de la classe JsonSerializerOptions.

JsonSerializerOptions(JsonSerializerDefaults)

Construit une nouvelle JsonSerializerOptions instance avec un ensemble prédéfini d’options déterminé par le .JsonSerializerDefaults

JsonSerializerOptions(JsonSerializerOptions)

Copie les options d’une JsonSerializerOptions instance vers une nouvelle instance.

Propriétés

Nom Description
AllowDuplicateProperties

Obtient ou définit une valeur qui indique si les noms de propriétés en double sont autorisés lors de la désérialisation des objets JSON.

AllowOutOfOrderMetadataProperties

Obtient ou définit une valeur qui indique si les propriétés de métadonnées JSON peuvent être spécifiées après les propriétés régulières dans un objet JSON désérialisé.

AllowTrailingCommas

Obtient ou définit une valeur qui indique si une virgule supplémentaire à la fin d’une liste de valeurs JSON dans un objet ou un tableau est autorisée (et ignorée) dans la charge utile JSON désérialisée.

Converters

Obtient la liste des convertisseurs définis par l’utilisateur qui ont été inscrits.

Default

Obtient une instance singleton en lecture seule qui JsonSerializerOptions utilise la configuration par défaut.

DefaultBufferSize

Obtient ou définit la taille de mémoire tampon par défaut, en octets, à utiliser lors de la création de mémoires tampons temporaires.

DefaultIgnoreCondition

Obtient ou définit une valeur qui détermine quand les propriétés avec des valeurs par défaut sont ignorées lors de la sérialisation ou de la désérialisation. La valeur par défaut est Never.

DictionaryKeyPolicy

Obtient ou définit la stratégie utilisée pour convertir le nom d’une IDictionary clé en un autre format, tel que la casse de chameau.

Encoder

Obtient ou définit l’encodeur à utiliser lors de l’échappement de chaînes ou null pour utiliser l’encodeur par défaut.

IgnoreNullValues
Obsolète.

Obtient ou définit une valeur qui indique si null les valeurs sont ignorées pendant la sérialisation et la désérialisation. La valeur par défaut est false.

IgnoreReadOnlyFields

Obtient ou définit une valeur qui indique si les champs en lecture seule sont ignorés pendant la sérialisation. Un champ est en lecture seule s’il est marqué avec le readonly mot clé. La valeur par défaut est false.

IgnoreReadOnlyProperties

Obtient ou définit une valeur qui indique si les propriétés en lecture seule sont ignorées pendant la sérialisation. La valeur par défaut est false.

IncludeFields

Obtient ou définit une valeur qui indique si les champs sont gérés pendant la sérialisation et la désérialisation. La valeur par défaut est false.

IndentCharacter

Définit le caractère de retrait utilisé lorsqu’il WriteIndented est activé. La valeur par défaut est le caractère d’espace.

IndentSize

Définit la taille de mise en retrait utilisée lorsqu’elle WriteIndented est activée. La valeur par défaut est deux.

IsReadOnly

Obtient une valeur qui indique si l’instance actuelle a été verrouillée pour la modification de l’utilisateur.

MaxDepth

Obtient ou définit la profondeur maximale autorisée lors de la sérialisation ou de la désérialisation JSON, avec la valeur par défaut 0 indiquant une profondeur maximale de 64.

NewLine

Obtient ou définit la nouvelle chaîne de ligne à utiliser quand WriteIndented est true.

La valeur par défaut correspond à la valeur de NewLine.

NumberHandling

Obtient ou définit un objet qui spécifie la façon dont les types de nombres doivent être gérés lors de la sérialisation ou de la désérialisation.

PreferredObjectCreationHandling

Obtient ou définit la gestion de création d’objets préférée pour les propriétés lors de la désérialisation de JSON.

PropertyNameCaseInsensitive

Obtient ou définit une valeur qui indique si le nom d’une propriété utilise une comparaison sans respect de la casse pendant la désérialisation. La valeur par défaut est false.

PropertyNamingPolicy

Obtient ou définit une valeur qui spécifie la stratégie utilisée pour convertir le nom d’une propriété sur un objet dans un autre format, tel que la casse de chameau ou null pour laisser les noms de propriétés inchangés.

ReadCommentHandling

Obtient ou définit une valeur qui définit la façon dont les commentaires sont gérés pendant la désérialisation.

ReferenceHandler

Obtient ou définit un objet qui spécifie comment les références d’objet sont gérées lors de la lecture et de l’écriture de JSON.

RespectNullableAnnotations

Obtient ou définit une valeur qui indique si les annotations nullabilité doivent être respectées pendant la sérialisation et la désérialisation.

RespectRequiredConstructorParameters

Obtient ou définit une valeur qui indique si les paramètres de constructeur non facultatifs doivent être spécifiés lors de la désérialisation.

Strict

Obtient une instance singleton en lecture seule qui JsonSerializerOptions utilise la configuration stricte.

TypeInfoResolver

Obtient ou définit le JsonTypeInfo programme de résolution de contrat utilisé par cette instance.

TypeInfoResolverChain

Obtient la liste des résolveurs de contrat chaînés JsonTypeInfo utilisés par cette instance.

UnknownTypeHandling

Obtient ou définit un objet qui spécifie comment désérialiser un type déclaré en tant qu’objet Object est géré pendant la désérialisation.

UnmappedMemberHandling

Obtient ou définit un objet qui spécifie 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.

Web

Obtient une instance singleton en lecture seule qui JsonSerializerOptions utilise la configuration web.

WriteIndented

Obtient ou définit une valeur qui indique si JSON doit utiliser une impression assez élevée. Par défaut, JSON est sérialisé sans espace blanc supplémentaire.

Méthodes

Nom Description
AddContext<TContext>()
Obsolète.

Ajoute un nouveau JsonSerializerContext à la résolution des métadonnées de l’instance actuelle JsonSerializerOptions .

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetConverter(Type)

Retourne le convertisseur pour le type spécifié.

GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
GetTypeInfo(Type)

Obtient les métadonnées de JsonTypeInfo contrat résolues par l’instance actuelle JsonSerializerOptions .

GetTypeInfo<T>()

Fournit des options à utiliser avec JsonSerializer.

MakeReadOnly()

Marque l’instance actuelle en lecture seule pour empêcher toute modification supplémentaire de l’utilisateur.

MakeReadOnly(Boolean)

Marque l’instance actuelle comme étant en lecture seule empêchant toute modification supplémentaire de l’utilisateur.

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)
TryGetTypeInfo(Type, JsonTypeInfo)

Tente d’obtenir les métadonnées de JsonTypeInfo contrat résolues par l’instance actuelle JsonSerializerOptions .

TryGetTypeInfo<T>(JsonTypeInfo<T>)

Fournit des options à utiliser avec JsonSerializer.

Méthodes d’extension

Nom Description
AddAIContentType(JsonSerializerOptions, Type, String)

Ajoute un type de contenu personnalisé à la configuration polymorphe pour AIContent.

AddAIContentType<TContent>(JsonSerializerOptions, String)

Ajoute un type de contenu personnalisé à la configuration polymorphe pour AIContent.

GetJsonSchemaAsNode(JsonSerializerOptions, Type, JsonSchemaExporterOptions)

Génère un schéma JSON correspondant aux métadonnées de contrat du type spécifié.

S’applique à