Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Kitaplık System.Text.Json varsayılan olarak değişmez, belirleyici davranışı vurgular ve çağıranın adına herhangi bir tahmin veya yorumlamayı önler. Kitaplık, güvenlik ve performans için kasıtlı olarak bu şekilde tasarlanmıştır.
System.Text.Json yüksek oranda yapılandırılabilir olsa da ve özellikleri serileştirilmiş türlerde gereken değişiklikleri en aza indirmek için kullanılabilse de, mevcut türleri mümkün olduğunca az değişiklikle işleme ile idiyomatik ve güvenli serileştirmeyi etkinleştirmek için yeniden düzenleme türleri arasındaki dengeleri göz önünde bulundurmak önemlidir.
uygulamasından BinaryFormatter öğesine System.Text.Jsongeçiş yaparken aşağıdaki davranışlara ve seçeneklere dikkat etmek çok önemlidir:
Varsayılan olarak,
alanları , ancakserileştirme içintarafından serileştirilmez veya seri durumdan çıkarılmaz not edilerek eklenebilir. Alternatif olarak, JsonSerializerOptions.IncludeFieldsseri hale getirilen türler için tüm genel alanları içerecek şekilde dikkatli bir şekilde ayarlanabilirtrue.JsonSerializerOptions options = new() { IncludeFields = true };Varsayılan olarak, System.Text.Jsonözel alanları ve özellikleri yoksayar. özniteliğini kullanarak bir özellikte genel olmayan erişimci kullanımını
[JsonInclude]etkinleştirebilirsiniz. Özel alanları dahil etmek için önemsiz olmayan bazı ek çalışmalar gerekir.System.Text.Json salt okunur alanları veya özellikleri seri durumdan
[JsonConstructor]çıkaramaz, ancak öznitelik, seri durumdan çıkarmada türün örneklerini oluşturmak için belirtilen oluşturucunun kullanılması gerektiğini belirtmek için kullanılabilir. Oluşturucu salt okunur alanları ve özellikleri ayarlayabilir.Belirli bir tür için varsayılan serileştirme davranışını geçersiz kılmak için özel dönüştürücüler yazabilirsiniz.
Birçok koleksiyonun seri hale getirilmesini ve seri durumdan çıkarılmasının desteklenmesine karşın bazı sınırlamalar vardır. Serileştirme ve seri durumdan çıkarma işlemleri için hangi türler ve koleksiyonların desteklendiği hakkında ayrıntılı bilgi için desteklenen türlerle ilgili belgelerin kısmına bakın.
belirli koşullar
altında, özel genel koleksiyonların seri hale getirilmesi ve seri durumdan çıkarılmasını destekler. Yerleşik desteği olmayan diğer türler Ancak, bu türleri desteklemek için özel bir dönüştürücü yazabilirsiniz.
destekler. Açık devralma hiyerarşileri desteklenmez ve polimorfizmle yuvarlama, bilinen türetilmiş tüm türler için tür ayrıştırıcı tanımlayıcıları gerektirir.
Bir özellik üzerindeki
[JsonIgnore]özniteliği, özelliğin serileştirme sırasında JSON'dan atlanmasına neden olur.içindeki başvuruları korumak ve döngüsel başvuruları
System.Text.Jsonişlemek için olarakJsonSerializerOptions.ReferenceHandlerayarlayınReferenceHandler.Preserve.Serializationözel anlaşmalarla kapsamlı bir şekilde özelleştirilebilir ve serileştirilmiş türlerdeki değişiklikler en aza indirilerek birçok senaryo engeli kaldırılabilir.