2010-07-15 5 views
0

J'ai fait des recherches sur le Web ces deux derniers jours, mais je ne peux en aucun cas faire fonctionner mon service WCF Duplex. J'ai créé un projet de démonstration qui peut être téléchargé à partir skydrive:Comment gérer le délai d'attente duplex WCF?

WCFDuplexDemo.zip

Aux fins de réduire le nombre de causes d'erreur possibles, j'ai décidé de revenir à une courte chaîne dans le gestionnaire de rappel car alors, aucune limite maximale de taille de message ou quoi que ce soit n'est dépassée. Normalement, mon service WCF aurait besoin de temps (+ 15mins) pour calculer un résultat et le renvoyer au client. Pour simuler cela, j'ai mis le thread en cours d'exécution à slepp pendant 12 minutes dans DoWork().

L'exception que je reçois toujours mentionne un problème éventuel avec le receiveTimeout, qui doit être augmenté pour éviter le problème. Toutefois, le receiveTimeout (et tout autre délai d'attente que je connais) est défini sur trois heures. Une autre chose: J'utilise .NET Framework 3.5 SP1 et le problème se produit également lors de l'utilisation de WsDUalHttpBinding au lieu de netTcpBinding.

Répondre

0

Harrr! Pour ceux qui rencontrent le même problème: je pense, il y a un bug dans l'implémentation .NET 3.5 de WCF. J'ai mis à jour vers .NET 4 et le problème est résolu maintenant.

+0

Pouvez-vous fournir une référence à la documentation de bogue ou quelque chose? –

0

Jetez un oeil ici Per-Session Services et consultez également la section "Terminaison de session" sur la page ouverte.

Espérons que cela aide

Questions connexes