Socket.LocalEndPoint viene aggiornato dopo la chiamata a SendToAsync

Socket.SendToAsync(SocketAsyncEventArgs) aggiorna ora il valore della proprietà Socket.LocalEndPoint specificando l'indirizzo locale del socket.

Versione introdotta

5.0

Descrizione delle modifiche

Nelle versioni precedenti di .NET Socket.SendToAsync(SocketAsyncEventArgs) non modifica il valore della proprietà Socket.LocalEndPoint nell'istanza del socket. A partire da .NET 5, quando SendToAsync(SocketAsyncEventArgs) viene completato correttamente, il valore di Socket.LocalEndPoint è l'indirizzo locale del socket associato in modo implicito. Questo nuovo comportamento è coerente con il comportamento di SendTo(Byte[], EndPoint) e BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)/EndSendTo(IAsyncResult).

Motivo della modifica

Questa modifica corregge un bug e rende il comportamento coerente tra le varianti SendTo.

La modifica di qualsiasi codice che presuppone che SendToAsync(SocketAsyncEventArgs) non modificherà il valore di Socket.LocalEndPoint.

API interessate