我们有一个.NET客户端使用SSL调用Java Web服务。有时,由于连接不良,调用失败(.NET客户端是从最奇怪的位置使用的UI)。我们希望实现一种自动重试机制,该机制将在放弃之前自动重试失败的呼叫X次。这应该仅使用特定类型的连接异常(而不是由Web服务本身生成的异常)来完成。
我们试图找到如何在绑定/通道级别上执行此操作,但是失败了......任何想法?
谢谢, yonadav
答案 0 :(得分:2)
查看Michelle Bustamante的异常处理代理生成器。它会自动处理重试:
http://wcfproxygenerator.codeplex.com/
来自网站:
此自定义工具扩展了WCFProxyGenerator以提供异常处理代理。它生成一个名为ExceptionHandlingProxy的附加代理,它继承ExceptionHandlingProxyBase - 后者实现了代理功能的内容。结果是您可以选择使用继承ClientBase或ExceptionHandlingProxy的默认代理,该代理封装管理通道工厂和通道的生命周期。 ExceptionHandlingProxy在“添加服务引用”对话框中尊重您对异步方法和集合类型的选择。