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 introducerad
5,0
Ändra beskrivning
I tidigare .NET-versioner Socket.SendToAsync(SocketAsyncEventArgs) ändrar inte värdet Socket.LocalEndPoint för egenskapen på socketinstansen. Från och med .NET 5, när SendToAsync(SocketAsyncEventArgs) det har slutförts, är värdet Socket.LocalEndPoint för den implicit bundna socketens lokala adress. Det här nya beteendet överensstämmer med beteendet SendTo(Byte[], EndPoint) för och/BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)EndSendTo(IAsyncResult) .
Orsak till ändringen
Den här ändringen åtgärdar en bugg och gör beteendet konsekvent mellan SendTo
olika varianter.
Rekommenderad åtgärd
Ändra all kod som förutsätter att SendToAsync(SocketAsyncEventArgs) inte ändrar värdet Socket.LocalEndPointför .