Dil

JsonSerializerOptions.RespectNullableAnnotations Özellik

Tanım

Serileştirme ve seri durumdan çıkarma sırasında null atanabilirlik ek açıklamalarına uyulup uyulmayacağını belirten bir değer alır veya ayarlar.

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

Özellik Değeri

Özel durumlar

Bu özellik serileştirme veya seri durumdan çıkarma oluştuktan sonra ayarlanır.

Açıklamalar

Seri hale getiriciyi, null atanamayan bir özellik alıcısından bir null değeri seri hale getirmeye çalışırken veya bir değeri null atanamaz özellik ayarlayıcısı veya oluşturucu parametresine seri durumdan null çıkarırken özel durum oluşturacak şekilde yapılandırır. Boş değer atanabilirlik ek açıklamaları, seri hale getirici tarafından kullanılan özellikler, alanlar ve oluşturucu parametrelerinden çözümlenir. Bu, , MaybeNullAttributeAllowNullAttribute ve DisallowNullAttributegibi NotNullAttributeözniteliklerden kaynaklanan ek açıklamaları içerir.

Boş değer atanabilir başvuru türlerinin çalışma zamanında nasıl temsil edilir kısıtlamaları nedeniyle, bu ayar yalnızca genel olmayan özelliklerin, alanların ve oluşturucu parametrelerinin null atanabilirlik ek açıklamalarını yönetir. Kök düzeyindeki türlerin, koleksiyon öğelerinin veya genel parametrelerin null atanabilirlik ek açıklamalarını zorunlu kılmak için kullanılamaz. Bu özelliğin varsayılan ayarı, "System.Text.Json.Serialization.RespectNullableAnnotationsDefault" özellik anahtarı kullanılarak uygulama genelinde değiştirilebilir.

Nullability doğrulama işlevleri, gereklilik doğrulamasından bağımsız olarak çalışır; yani yükün gerekli bir özelliğin eksik olduğu senaryolarda ayarın hiçbir etkisi yoktur. Bu, anahtar sözcük, JsonRequiredAttribute öznitelik veya RespectRequiredConstructorParameters özelliği kullanılarak required bağımsız olarak yapılandırılabilir.

Yeni uygulamaların bu özelliği her zaman yakın ilişkili RespectRequiredConstructorParameters özelliğiyle birlikte olarak trueayarlaması önerilir.

Şunlara uygulanır