我正在设计一个WCF服务和使用命名管道进行回调的客户端,当服务器处理来自客户端的请求时,出现错误#109,最终导致管道连接中止。以下是服务器端的跟踪文件。如果字体太小而无法看到,我应该简单地解释它:WCF管道连接由于错误而中止#109
当客户端向服务器发出请求时,发生了红色标记的三个异常。该函数非常简单,将一个字符串变量传递给服务器。这个错误是#109(连续3次例外,如果这个数字意味着什么),它不会提供更多信息。在这个活动中,管道连接最终被中止。另外奇怪的是,我们可以看到“接收连接字节...”(处理消息)之后的下一个活动,它实际上已经过了,这意味着服务器端处理确实通过传入的参数进行了调用。这可以在调试器中验证,因为在服务器端操作确实获得了传递字符串。另外,操作功能里面,如果我尝试
Dim callback = OperationContext.Current.GetCallbackChannel(Of ISSLServiceCallback)()
If DirectCast(callback, ICommunicationObject).State = CommunicationState.Opened Then
DoSomething()
End If
它实际上进入if语句,我猜表示该通道实际上是活的那么远。
感谢您的帮助!