Socket.LocalEndPoint uppdateras efter att SendToAsync har anropats

Socket.SendToAsync(SocketAsyncEventArgs) uppdaterar nu värdet för Socket.LocalEndPoint egenskapen till socketens lokala adress.

Version lanserad

5,0

Ändra beskrivning

I tidigare versioner av .NET ändrar Socket.SendToAsync(SocketAsyncEventArgs) inte värdet på egenskapen Socket.LocalEndPoint på socketinstansen. ** Från och med .NET 5, när SendToAsync(SocketAsyncEventArgs) slutförs, är värdet Socket.LocalEndPoint den implicit bundna socketens lokala adress. Det här nya beteendet överensstämmer med beteendet för SendTo(Byte[], EndPoint) och BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)/EndSendTo(IAsyncResult).

Orsak till ändring

Den här ändringen åtgärdar en bugg och gör beteendet konsekvent mellan SendTo olika varianter.

Ändra all kod som förutsätter att SendToAsync(SocketAsyncEventArgs) inte ändrar värdet på Socket.LocalEndPoint.

Berörda API:er