C# Language Client UDP de base


Exemple

Cet exemple de code crée un client UDP, puis envoie "Hello World" sur le réseau au destinataire prévu. Un écouteur ne doit pas nécessairement être actif, car UDP est sans connexion et diffusera le message indépendamment. Une fois le message envoyé, le travail des clients est terminé.

byte[] data = Encoding.ASCII.GetBytes("Hello World");
string ipAddress = "192.168.1.141";
string sendPort = 55600;
try
{
     using (var client = new UdpClient())
     {
         IPEndPoint ep = new IPEndPoint(IPAddress.Parse(ipAddress), sendPort);
         client.Connect(ep);
         client.Send(data, data.Length);
     }
}
catch (Exception ex)
{
     Console.WriteLine(ex.ToString());
}

Vous trouverez ci-dessous un exemple d'un auditeur UDP en complément du client ci-dessus. Il restera en permanence à l'écoute du trafic sur un port donné et écrira simplement ces données sur la console. Cet exemple contient un indicateur de contrôle ' done ' qui n'est pas défini en interne et s'appuie sur quelque chose pour définir ceci afin de permettre de mettre fin à l'écouteur et de le quitter.

bool done = false;
int listenPort = 55600;
using(UdpClinet listener = new UdpClient(listenPort))
{
    IPEndPoint listenEndPoint = new IPEndPoint(IPAddress.Any, listenPort);
    while(!done)
    {
        byte[] receivedData = listener.Receive(ref listenPort);

        Console.WriteLine("Received broadcast message from client {0}", listenEndPoint.ToString());

        Console.WriteLine("Decoded data is:");
        Console.WriteLine(Encoding.ASCII.GetString(receivedData)); //should be "Hello World" sent from above client
    }
}