C# 在无故障状态下检查DuplexChannelFactory上的服务器可用性
当使用“CreateChannel()”创建DuplexChannelFactory时,状态为“created”,此状态仅表示双工连接请求已准备好连接。问题是,在调用“Open()”时,如果服务器不可用,则DuplexChannelFactory会简单地设置为Faulted,这会影响我的处理,因为我订阅的是一般方法故障的Faulted事件,而不是一般连接问题C# 在无故障状态下检查DuplexChannelFactory上的服务器可用性,c#,wcf,duplex,C#,Wcf,Duplex,当使用“CreateChannel()”创建DuplexChannelFactory时,状态为“created”,此状态仅表示双工连接请求已准备好连接。问题是,在调用“Open()”时,如果服务器不可用,则DuplexChannelFactory会简单地设置为Faulted,这会影响我的处理,因为我订阅的是一般方法故障的Faulted事件,而不是一般连接问题 我的问题是:在调用“打开”并进入故障状态之前,如何检查双工服务器是否可用?或者有没有办法找到出现故障的原因,以便我能够正确响应问题?您可以
我的问题是:在调用“打开”并进入故障状态之前,如何检查双工服务器是否可用?或者有没有办法找到出现故障的原因,以便我能够正确响应问题?您可以使用此代码确定通道的状态:如果(client.InnerChannel.State==CommunicationState.faulted){}还没有要检查的通道。请再读一遍这个问题,经过测试,我发现我们无法通过客户端的通道检查服务器端是否正常运行。如果服务器异常,则客户端的通道状态不会更改。简而言之,成功创建客户端通道后,它与服务器端无关。您可以使用以下代码确定通道的状态:如果(client.InnerChannel.State==CommunicationState.Faulted){}还没有要检查的通道。请再读一遍这个问题,经过测试,我发现我们无法通过客户端的通道检查服务器端是否正常运行。如果服务器异常,则客户端的通道状态不会更改。简而言之,一旦成功创建了客户端通道,它就与服务器端无关。