Rebranchez TCPClient après l'interruption

J'ai plusieurs instances d'une application client, la connexion à une application principale sur internet par TcpClient. (Codée par moi). Si la connexion est faite comme:

TcpClient.Connexion(ip, port)

Je veux maintenant cette option pour gérer les différents type de déconnexion des événements:

  1. Principale de l'Application (serveur) ou une application client à l'ordinateur de perdre la connexion internet.
    • Lors de la reprise de la connexion, la communication semble perdu, mais quand j'ai essayer de se reconnecter, j'obtiens le message:
      "Une demande de connexion a été faite sur un socket déjà connecté"
    • Donc j'ai besoin de fermer et de redémarrer l'application cliente.
  2. De l'Application principale (le serveur) est fermé et redémarré.
    • Le redémarrage de l'Application Principale, et ensuite essayer de renouer le client app, les résultats dans la même erreur que ci-dessus.

Alors, que dois-je faire? Ai-je besoin d'instancier un Nouvel TcpClient dans les Applications clientes, chaque fois que ce type d'interruption se produire? Je n'ai pas essayé, donc ne sais pas si c'est une mauvaise solution?

Jetez un oeil sur ma solution: github.com/Mellen/Networking-Samples
Non, ne regardez pas ce client par exemple. Ne pas utiliser des threads de lecture à l'arrière-plan. Utiliser les méthodes asynchrones.

OriginalL'auteur bretddog | 2011-05-06