.NET Webservice Client:在呼叫失败时自动重试

时间:2010-04-29 11:11:09

标签: .net wcf web-services wcf-client

我们有一个.NET客户端使用SSL调用Java Web服务。有时,由于连接不良,调用失败(.NET客户端是从最奇怪的位置使用的UI)。我们希望实现一种自动重试机制,该机制将在放弃之前自动重试失败的呼叫X次。这应该仅使用特定类型的连接异常(而不是由Web服务本身生成的异常)来完成。

我们试图找到如何在绑定/通道级别上执行此操作,但是失败了......任何想法?

谢谢, yonadav

1 个答案:

答案 0 :(得分:2)

查看Michelle Bustamante的异常处理代理生成器。它会自动处理重试:

http://wcfproxygenerator.codeplex.com/

来自网站:

此自定义工具扩展了WCFProxyGenerator以提供异常处理代理。它生成一个名为ExceptionHandlingProxy的附加代理,它继承ExceptionHandlingProxyBase - 后者实现了代理功能的内容。结果是您可以选择使用继承ClientBase或ExceptionHandlingProxy的默认代理,该代理封装管理通道工厂和通道的生命周期。 ExceptionHandlingProxy在“添加服务引用”对话框中尊重您对异步方法和集合类型的选择。