Socket.LocalEndPoint é atualizado depois de chamar SendToAsync

Socket.SendToAsync(SocketAsyncEventArgs) agora atualiza o valor da propriedade Socket.LocalEndPoint para o endereço local do soquete.

Versão introduzida

5,0

Descrição das alterações

Nas versões anteriores do .NET, Socket.SendToAsync(SocketAsyncEventArgs) não altera o valor da propriedade Socket.LocalEndPoint na instância do soquete. A partir do .NET 5, quando SendToAsync(SocketAsyncEventArgs) for concluído com êxito, o valor de Socket.LocalEndPoint será o endereço local do soquete implicitamente associado. Esse novo comportamento é consistente com o comportamento de SendTo(Byte[], EndPoint) e BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)/EndSendTo(IAsyncResult).

Motivo da alteração

Essa alteração corrige um bug e torna o comportamento consistente entre variantes de SendTo.

Altere qualquer código que pressupõe que SendToAsync(SocketAsyncEventArgs) não vai alterar o valor de Socket.LocalEndPoint.

APIs afetadas