如何检测WCF服务关闭或断开与客户端的连接?

时间:2012-06-15 02:28:24

标签: c# wcf

我正在构建一个WCF服务,在客户端连接到此服务之后,当服务断开连接时,客户端没有注意到,并且它不会触发任何操作,我希望每当关闭客户端表单时连接丢失,那么如何从客户端检测到WCF服务断开或关闭。

2 个答案:

答案 0 :(得分:6)

一个简单的方法是客户端将调用一个名为IsAlive()的服务中的简单方法,只返回true,如thread中所述。

还有另一种方法可以使用WCF 4附带的新发现/公告功能实现此目的。虽然我没有尝试但是此功能可以帮助您使服务通知客户端它进入离线/关机状态。

以下是post示例。

你可以谷歌“WCF通知服务”,你会得到一些很好的参考资料。

答案 1 :(得分:3)

您应该只设置一个定时器,它将持续ping服务器,如果失败,则触发服务不再可用的事件。

这个答案也有一些很好的建议。

WCF - have client check for service availability