SendFile genereert NotSupportedException voor verbindingsloze sockets
Het gedrag van de SendFile methodefamilie voor verbindingsloze sockets (bijvoorbeeld UDP) is nu consistent op alle platforms. De betrokken methoden gooien nu een op NotSupportedException alle platforms.
Eerder werden de volgende gedragingen waargenomen voor een verbindingloos Socket (bijvoorbeeld UDP):
- SendFile Gooide een NotSupportedException op Windows, maar niet op Unix-achtige platforms.
- De ValueTask geretourneerde van SendFileAsync een opgeslagen op SocketException alle platforms.
- Het aanroepen EndSendFile van een IAsyncResult geretourneerde oproep heeft BeginSendFile een SocketException op alle platforms geworpen.
Vanaf .NET 8 worden de volgende gedragingen waargenomen voor een verbindingloos Socket (bijvoorbeeld UDP):
- SendFile gooit een NotSupportedException op alle platforms.
- De ValueTask geretourneerde bestanden zijn afkomstig van SendFileAsync winkels NotSupportedException op alle platforms.
- Het aanroepen EndSendFile van BeginSendFile een IAsyncResult geretourneerde werpt een NotSupportedException op alle platforms.
.NET 8 RC 1
Deze wijziging is een gedragswijziging.
Aangezien dit SendFile
meestal wordt gebruikt met grote hoeveelheden gegevens, is het niet zinvol om deze te gebruiken met verbindingsloze sockets. Bovendien was het vorige gedrag inconsistent en gooide het SocketException
op sommige platforms, terwijl het op anderen lukt met een onvoorspelbaar resultaat.
Gebruik geen SendFile
methoden voor verbindingsloze sockets.
Feedback over .NET
.NET is een opensourceproject. Selecteer een koppeling om feedback te geven: