Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Beteendet för metodfamiljen SendFile för anslutningslösa (till exempel UDP)-socketar är nu konsekvent på alla plattformar. De berörda metoderna genererar nu en NotSupportedException på alla plattformar.
Tidigare beteende
Tidigare observerades följande beteenden för en anslutningslös Socket (till exempel UDP):
- SendFile genererade en NotSupportedException på Windows, men inte på Unix-liknande plattformar.
- Den returnerade ValueTask från SendFileAsync lagrade en SocketException på alla plattformar.
- Att kalla på EndSendFile i en IAsyncResult som returnerades från BeginSendFile resulterade i ett SocketException på alla plattformar.
Nytt beteende
Från och med .NET 8, för en anslutningslös Socket (till exempel UDP), observeras följande beteenden:
- SendFile genererar NotSupportedException på alla plattformar.
- Den ValueTask som returneras från SendFileAsync lagrar en NotSupportedException på alla plattformar.
- Att anropa EndSendFile på en IAsyncResult som returnerats från BeginSendFile orsakar en NotSupportedException på alla plattformar.
Version lanserad
.NET 8 RC 1
Typ av brytande ändring
Den här ändringen är en beteendeförändring.
Orsak till ändring
Med tanke på att SendFile vanligtvis används med stora mängder data är det inte meningsfullt att använda den med anslutningslösa sockets. Dessutom var det tidigare beteendet inkonsekvent och kastades SocketException på vissa plattformar, samtidigt som andra lyckades med ett oförutsägbart resultat.
Rekommenderad åtgärd
Använd inte SendFile metoder för anslutningslösa socketar.