如何检查WCF服务是否可用?

时间:2013-04-28 10:16:02

标签: c# wcf wcf-proxy

我可以使用Proxy.Open()作为连接是否有效的指示? 我想检查一下连接是否可用,然后,如果不是,我将不会在应用程序运行期间对服务进行任何调用。

注意:我只需要检查连接,不一定是整个客户端服务往返。

我按照建议在服务中创建了一个Ping()方法。

仅供参考,使用简单的Open()只是不起作用 - 即使服务离线,Open()也不会引发任何异常!

1 个答案:

答案 0 :(得分:2)

鉴于有很多变量会影响WCF服务调用的成功,我倾向于向服务添加一个虚拟的void KnockKnock()方法,以便在连接有效的情况下获得真实证据。

此方法还可以实现双重目的:您可以将其称为异步,以通知服务器他必须为传入请求做好准备。 (只是初始启动服务可能需要一些时间。)通过调用KnockKnock()方法,服务器可以开始加载服务并为您的客户端提供更好的初始响应性能。