因此,我正在使用可靠的WSHttpBinding来消费每会话WCF服务。由于每个会话都需要处理任何与频道有关的问题,但我对WCF的了解还不是很好。如何正确监控每会话WCF客户端
我决定订阅ClientBase.InnerChannel的故障事件,认为如果出现问题,会触发此事件。然而,这似乎只在特定情况下才会发生。
例如我连接,然后从网络拔掉服务是打开和故障不会抛出,即使当我试图做一些事情,我只有EndPointNotFound异常。
有无论如何,我可以监控一个事件,随时随地出现任何频道无法使用的事件?如果我断开连接或发生超时,但是即使这种情况不可行(没有忙于等待不断检查),我也会喜欢这样做,我会很高兴能尽快让我知道一些事情。
如果传输会话停止代理应该抛出一个异常,也可能是一个的CommunicationException,一timeoutexception或其他人,我不明白当你没有这种行为 – MaRuf 2012-08-15 20:32:38
是抛出异常,问题是我不想在一个地方处理它,而不是许多。主要的是,我所拍摄的是,我会事先知道这个连接已经死了,所以一旦我从网络上拔掉,我会在代理服务器上看到一个频道发生故障的事件。我不确定这会起作用,因此这个问题(想想Outlook的状态栏中的连接事件)。如果这不起作用,我有一个ClientManager类包装在代理服务器上,如果我能处理所有事情,我会很乐意。但是所有的代理服务电话都是在这个班级之外进行的 – 2012-08-16 10:34:28