断开wcf客户端中的问题

时间:2012-11-06 14:51:59

标签: .net wcf

我有一个WCF多游戏服务。客户端连接到服务器并调用一些方法。 如果一个客户端丢失连接,如何重新连接到服务器?是否有连接丢失的事件? 服务器如何恢复其会话并返回断开连接之前调用的方法调用的结果? 任何人都可以给我一些关于这个问题的帖子或文章。 抱歉英语不好。 谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

为了处理这类问题,你可以而且应该做些不同的事情。

首先,您可以启用Reliable Sessions。可靠会话基于WS-ReliableMessageing协议,可以帮助屏蔽消息和传输中的某些故障。在可靠的会话中还定义了重试尝试和超时。

在客户端,有一个属性指示连接的状态(Created,Connected,Faulted),但在呼叫之后可能不会出现故障。这是一种检查的可能性。然后,您可以转储客户端并重新创建要再次连接的对象。您仍然需要执行try catch块并尝试在故障时重新创建客户端。

即使断开连接后返回结果的另一个问题也可以通过提供服务ConcurrencyMode as ReentrantInstanceMode as Single来解决。 Here is a CodePlex artcle on why you would use which combination