WCF de pousser le client à travers un pare-feu?

Voir aussi Comment fonctionne un serveur WCF informer
un WCF client sur les changements? (Mieux
solution simple interrogation, par exemple
Coment ou d'interrogation)

J'ai besoin d'utiliser push-technologie avec WCF client de pare-feu. Ce doit être un problème commun, et je sais pour un fait, il fonctionne en théorie (voir les liens ci-dessous), mais je n'ai pas réussi à le faire fonctionner, et je n'ai pas été en mesure de trouver un exemple de code qui illustre.

Exigences:

  • WCF
  • Clients se connecte au serveur via le port tcp 80 (netTcpBinding).
  • Serveur repousse des informations à intervalles irréguliers (1 min à plusieurs heures).
  • Les utilisateurs ne devraient pas avoir à configurer son pare-feu, serveur pousse doit passer à travers les pare-feu qui ont tous les ports entrants fermé. TCP recto verso sur la même connexion est nécessaire pour cela, une double liaison ne fonctionne pas depuis un port doit être ouvert sur le client de pare-feu.
  • Clients envoie des pulsations pour serveur à intervalles réguliers (par exemple tous les 15 minutes), de sorte serveur connaît client est toujours en vie.
  • Serveur IIS7 avec.

La solution semble être en duplex netTcpBinding. Basé sur cette information:

WCF travers les pare-feu et Nat

En gardant les connexions ouvertes dans IIS

Mais je n'ai pas encore trouver un exemple de code qui fonctionne.. j'ai essayé la combinaison de la "Duplex" et "TcpActivation" échantillons à partir de Microsoft WCF Échantillons sans aucune chance. Svp quelqu'un peut-il m'indiquer un exemple de code qui fonctionne, ou construire un petit exemple d'application. Merci beaucoup!

Êtes-vous rencontrer tout type d'exceptions? Qu'est-ce qui ne fonctionne pas?

OriginalL'auteur Sire | 2008-08-22