Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo UdpClient.Send (Byte[], Int32, IPEndPoint)

 

Data di pubblicazione: ottobre 2016

Invia un datagramma UDP all'host all'endpoint remoto specificato.

Spazio dei nomi:   System.Net.Sockets
Assembly:  System (in System.dll)

public int Send(
	byte[] dgram,
	int bytes,
	IPEndPoint endPoint
)

Parametri

dgram
Type: System.Byte[]

Matrice di tipo Byte che specifica il datagramma UDP da inviare, rappresentato come una matrice di byte.

bytes
Type: System.Int32

Numero di byte nel datagramma.

endPoint
Type: System.Net.IPEndPoint

IPEndPoint che rappresenta l'host e la porta a cui inviare il datagramma.

Valore restituito

Type: System.Int32

Numero di byte inviati.

Exception Condition
ArgumentNullException

dgram è null.

InvalidOperationException

UdpClient ha già stabilito un host remoto predefinito.

ObjectDisposedException

UdpClient è chiuso.

SocketException

Si è verificato un errore durante l'accesso al socket. Per altre informazioni, vedere la sezione Osservazioni.

Il Send metodo invia datagrammi all'endpoint specificato e restituisce il numero di byte inviati. Prima di chiamare questo overload, è necessario creare innanzitutto un IPEndPoint utilizzando il numero di porta e indirizzo IP dell'host remoto a cui verranno inviati i datagrammi. È possibile inviare datagrammi per trasmettere il valore predefinito di indirizzi, 255.255.255.255, specificando SocketOptionName.Broadcast per il Address proprietà del IPEndPoint. Dopo aver creato questo IPEndPoint, passa a di Send metodo come la endPoint parametro.

Se si desidera inviare datagrammi ad altri indirizzi broadcast, utilizzare il Client metodo per ottenere il sottostante Socket, e impostare l'opzione socket SocketOptionName.Broadcast. È inoltre possibile ripristinare l'utilizzo di Socket (classe).

System_CAPS_noteNota

Non viene fornito un endPoint parametro a questo metodo se è già stato stabilito un host remoto con il Connect metodo. In caso contrario il Send metodo genererà un SocketException. Se si riceve un SocketException, utilizzare SocketException.ErrorCode per ottenere il codice di errore specifico. Dopo aver ottenuto il codice, è possibile fare riferimento alla documentazione relativa ai codici di errore dell'API Windows Sockets versione 2 disponibile in MSDN per una descrizione dettagliata dell'errore.

Nell'esempio seguente viene illustrato il Send metodo. Questo esempio viene utilizzato un IPEndPoint per specificare l'host di destinazione.

UdpClient udpClient = new UdpClient();
IPAddress ipAddress = Dns.Resolve("www.contoso.com").AddressList[0];
IPEndPoint ipEndPoint = new IPEndPoint(ipAddress, 11004);	

Byte[] sendBytes = Encoding.ASCII.GetBytes("Is anybody there?");
try{
    udpClient.Send(sendBytes, sendBytes.Length, ipEndPoint);
}
catch ( Exception e ){
    Console.WriteLine(e.ToString());	
}

.NET Framework
Disponibile da 1.1
Torna all'inizio
Mostra: