C# WCF通道故障模式

C# WCF通道故障模式,c#,wcf,C#,Wcf,我想知道WCF服务的故障模式的行为 假设托管服务的服务器已关闭,那么我用来连接服务的通道将处于故障模式 以下是我的观察: 服务已启动并运行,所有服务调用均成功 现在服务器关闭了,通道显示它已打开,所以它将调用最终超时的服务,我将处理该通道 对于下一个服务调用,它将创建新的通道,就像我在上一次调用中处理它一样 问题:这是预期情景还是通道应显示第一次呼叫处于故障状态 请指导。根据TCP的设计,通常无法查看服务器或客户端是否失去连接。所以你得打个电话看看。(非正常的方式是发送一个空的TCP包,但任

我想知道WCF服务的故障模式的行为

假设托管服务的服务器已关闭,那么我用来连接服务的通道将处于故障模式

以下是我的观察:

  • 服务已启动并运行,所有服务调用均成功
  • 现在服务器关闭了,通道显示它已打开,所以它将调用最终超时的服务,我将处理该通道
  • 对于下一个服务调用,它将创建新的通道,就像我在上一次调用中处理它一样
问题:这是预期情景还是通道应显示第一次呼叫处于故障状态


请指导。

根据TCP的设计,通常无法查看服务器或客户端是否失去连接。所以你得打个电话看看。(非正常的方式是发送一个空的TCP包,但任何操作系统通常都不支持它。)

如果您经常调用一个特殊的nop(无操作)函数,您可以更快地看到它

如果您的呼叫因连接超时而失败(如果对方离线,则每次都会发生这种情况),那么您的频道就会出现故障