Share via


System.Text.Json IAsyncEnumerable serialisatie

System.Text.Json ondersteunt nu serialiseren en deserialiseren van IAsyncEnumerable<T> exemplaren.

Vorig gedrag

In eerdere versies System.Text.Json worden geserialiseerde IAsyncEnumerable<T> exemplaren als lege JSON-objecten ({}). Deserialisatie is mislukt met een JsonException.

Nieuw gedrag

Asynchrone serialisatiemethoden inventariseren nu alle IAsyncEnumerable<T> exemplaren in een objectgrafiek en serialiseren ze vervolgens als JSON-matrices. Synchrone serialisatiemethoden bieden geen ondersteuning voor IAsyncEnumerable<T> serialisatie en gooien van een NotSupportedException.

Versie geïntroduceerd

.NET 6

Type wijziging die fouten veroorzaken

Deze wijziging kan van invloed zijn op de broncompatibiliteit. Als u naar .NET 6 retarget, krijgt u geen compilatiefouten, maar kunnen er verschillen optreden in runtime-serialisatiegedrag.

Reden voor wijziging

Deze wijziging is geïntroduceerd om ondersteuning toe te voegen voor streamingantwoorden IAsyncEnumerable<T> in ASP.NET Core MVC.

Controleer of uw serialisatiemodellen typen bevatten die implementeren IAsyncEnumerable<T> en bepalen of het verzenden van de opsomming in de JSON-uitvoer wenselijk is. U kunt serialisatie op een van de volgende manieren uitschakelen IAsyncEnumerable<T> :

Betrokken API's

Zie ook