System. Text. JSON ıasyncenumerable serileştirme
System.Text.Json Artık örneklerin serileştirilmesi ve serisini kaldırma desteği IAsyncEnumerable<T> .
Önceki davranış
Önceki sürümlerde, System.Text.Json serileştirilmiş IAsyncEnumerable<T> ÖRNEKLERI boş JSON nesneleri () olarak {} . Seri kaldırma, ile başarısız oldu JsonException .
Yeni davranış
Zaman uyumsuz serileştirme yöntemleri IAsyncEnumerable<T> bir nesne grafiğindeki örnekleri numaralandırır ve ardından BUNLARı JSON dizileri olarak serileştirmektedir. Zaman uyumlu seri IAsyncEnumerable<T> hale getirme yöntemleri serileştirme ve oluşturma işlemi desteklemez NotSupportedException .
Sunulan sürüm
.NET 6
Son değişiklik türü
Bu değişiklik, kaynak uyumluluğunuetkileyebilir. .NET 6 ' da yeniden hedeflerseniz, hiçbir derleme zamanı hatası almazsınız, ancak çalışma zamanı serileştirme davranışı farklarıyla karşılaşabilirsiniz.
Değişiklik nedeni
bu değişiklik, ASP.NET Core MVC 'de akış yanıtları için destek eklemek üzere sunulmuştur IAsyncEnumerable<T> .
Önerilen eylem
Serileştirme modellerinizin, öğesini uygulayan IAsyncEnumerable<T> ve JSON çıkışındaki numaralandırmanın ne şekilde yayılmadığını belirleme gibi türler içerdiğinden emin olun. IAsyncEnumerable<T>Serileştirme 'i aşağıdaki yollarla devre dışı bırakabilirsiniz:
- JsonIgnoreAttributeİçeren özelliğine bir ekleyin IAsyncEnumerable<T> .
- Örnekleri boş JSON nesneleri olarak seri hale getirilen özel bir dönüştürücü fabrikası tanımlayın IAsyncEnumerable<T> .