Question

Je voudrais gérer un endpointNotFoundException dans mon orchestration.

J'ajoute un nouveau gestionnaire d'exceptions

Scope synchronisée = false

Exception Type d'objet = System.ServiceModel.endPointNotFoundException (ce type d'objet ne fonctionne pas)

Exception Type d'objet = System.ServiceModel.CommunicationException (ce type d'objet ne fonctionne pas)

Exception Type d'objet = System.SystemException (Ce type d'objet a fonctionné. Ce que je ne veux pas)

Une idée sur la façon de prendre de telles exceptions dans l'orchestration?

Était-ce utile?

La solution

Cela semble être un problème courant - par exemple ici et ici. Je suis d'accord avec toi si j'attrape un base System.Exception que le type attrapé est System.ServiceModel.EndpointNotFoundException avec un intérieur System.Net.WebException.

Bien qu'il ne réponde pas directement à votre question, pourquoi ne pas marquer le port comme Delivery Notification = Transmitted, puis attrapez le LivracingFailureException?.

De cette façon, vous découplez votre orchestration à partir de l'adaptateur spécifique (WCF), et si vous modifiez votre transport (ou ajoutez un transport de sauvegarde, etc.), la gestion des exceptions fonctionnera toujours.

Edit: Scott Colestock mentionne un pirater pour attraper des exceptions internes - quelque chose de similaire pourrait fonctionner pour l'exigence d'origine

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top