如何排除故障:wcf应用程序停止通过命名管道接收数据

本文关键字:管道 数据 应用程序 何排除 排除 wcf 故障 | 更新日期: 2023-09-27 18:23:49

我有一个UI WPF应用程序,它显示从WCF命名管道接收的数据。一段时间后(约30分钟),数据被冻结(但重新启动后一切正常)。没有显示任何错误。UI负责。如何解决问题?也许我应该用"try/catch"覆盖整个应用程序,并在消息框中显示任何异常?

如何排除故障:wcf应用程序停止通过命名管道接收数据

默认情况下,wcf是为短时间会话配置的。您必须将NetNamedPipeBinding的ReceiveTimeout设置为TimeSpan.MaxValue才能消除这种行为
这应该可以解决问题,无论如何,在通道的Faulted、Closed、…中添加一个处理程序是个好主意。。。事件来了解正在发生的事情。(您必须将您的频道投射到ICommunicationObject)。因为如果wcf中出现任何问题,您唯一的解决方案就是创建一个新通道(不可能从Faulted或Closed状态返回到Open)。