JsonSerializerOptions.RespectNullableAnnotations 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
serialization 및 deserialization 중에 null 허용 여부 주석을 적용해야 하는지 여부를 나타내는 값을 가져오거나 설정합니다.
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
속성 값
예외
이 속성은 serialization 또는 deserialization이 발생한 후에 설정됩니다.
설명
nullable이 아닌 속성 getter에서 null
값을 직렬화하거나 null
값을 nullable이 아닌 속성 setter 또는 생성자 매개 변수로 역직렬화할 때 예외를 throw하도록 serializer를 구성합니다. Null 허용 여부 주석은 serializer에서 사용되는 속성, 필드 및 생성자 매개 변수에서 확인됩니다. 여기에는 NotNullAttribute, MaybeNullAttribute, AllowNullAttribute 및 DisallowNullAttribute같은 특성에서 비롯되는 주석이 포함됩니다.
런타임에 nullable 참조 형식을 나타내는 방법의 제한으로 인해 이 설정은 제네릭이 아닌 속성, 필드 및 생성자 매개 변수의 null 허용 여부 주석만 제어합니다. 루트 수준 형식, 컬렉션 요소 또는 제네릭 매개 변수의 null 허용 여부 주석을 적용하는 데 사용할 수 없습니다. 이 속성의 기본 설정은 "System.Text.Json.Serialization.RespectNullableAnnotationsDefault" 기능 스위치를 사용하여 애플리케이션 전체로 전환할 수 있습니다.
Null 허용 여부 유효성 검사는 필수 유효성 검사와 독립적으로 작동합니다. 즉, 페이로드에 필수 속성이 누락된 시나리오에서는 설정이 영향을 주지 않습니다.
required
키워드, JsonRequiredAttribute 특성 또는 RespectRequiredConstructorParameters 속성을 사용하여 독립적으로 구성할 수 있습니다.
새 애플리케이션은 항상 밀접하게 관련된 RespectRequiredConstructorParameters 속성과 함께 이 속성을 true
설정하는 것이 좋습니다.
적용 대상
.NET