JsonSerializerOptions.RespectNullableAnnotations Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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.
public:
property bool RespectNullableAnnotations { bool get(); void set(bool value); };
public bool RespectNullableAnnotations { get; set; }
member this.RespectNullableAnnotations : bool with get, set
Public Property RespectNullableAnnotations As Boolean
Valeur de propriété
Exceptions
Cette propriété est définie après la sérialisation ou la désérialisation.
Remarques
Configure le sérialiseur pour lever une exception lors de la tentative de sérialisation d’une valeur null
à partir d’un getter de propriété non nullable, ou lors de la désérialisation d’une valeur null
dans un paramètre setter ou constructeur de propriété non nullable. Les annotations de possibilité de nullabilité sont résolues à partir des propriétés, des champs et des paramètres de constructeur utilisés par le sérialiseur. Cela inclut des annotations provenant d’attributs tels que NotNullAttribute, MaybeNullAttribute, AllowNullAttribute et DisallowNullAttribute.
En raison de restrictions dans la façon dont les types de référence nullables sont représentés au moment de l’exécution, ce paramètre régit uniquement les annotations de possibilité null des propriétés, des champs et des paramètres de constructeur non génériques. Il ne peut pas être utilisé pour appliquer des annotations nullabilité des types de niveau racine, des éléments de collection ou des paramètres génériques. Le paramètre par défaut de cette propriété peut être activé à l’échelle de l’application à l’aide du commutateur de fonctionnalité « System.Text.Json.Serialization.RespectNullableAnnotationsDefault ».
Les fonctions de validation de la nullabilité indépendamment de la validation d’intégrité requise, c’est-à-dire que le paramètre n’a aucun effet dans les scénarios où la charge utile manque une propriété requise. Cela peut être configuré indépendamment à l’aide du mot clé required
, de l’attribut JsonRequiredAttribute ou de la propriété RespectRequiredConstructorParameters.
Il est recommandé que les nouvelles applications définissent toujours cette propriété sur true
, en combinaison avec la propriété RespectRequiredConstructorParameters étroitement associée.