连接丢失与客户端时查找服务器详细信息

时间:2013-07-19 07:29:09

标签: wcf

我有一个代码可以从一个具有多个实例的客户端访问多个wcf服务器。如果这之间有任何连接丢失,有故障/关闭事件触发功能就可以解决这个问题。

((ICommunicationObject)notificationProviderClient).Faulted += new EventHandler(myHost_Faulted); ((ICommunicationObject)notificationProviderClient).Closed += new EventHandler(myHost_Closed);

void myHost_Faulted(object sender, EventArgs e) {

}

void myHost_Closed(object sender, EventArgs e) {

}

如果任何连接出错/关闭,则调用上述函数。  在这个场景中如何找到哪个wcf服务器连接丢失了?有没有可能找到这个或我们必须采取另一种方法来处理这个?

1 个答案:

答案 0 :(得分:0)

在连接丢失期间找到服务器的远程地址,在客户端使用

this.notificationProviderClient.InnerDuplexChannel.Faulted += new EventHandler(myHost_Faulted);

void myHost_Faulted(object sender, EventArgs e) {

    IContextChannel channel = sender as IContextChannel;

    if (channel  != null)
    {
      var remoteAddrs = a1.RemoteAddress;
    }

}