我有一个WorkflowServiceHost我在Windows服务中启动。一切正常,但一段时间后服务停止响应请求。通过跟踪日志,我可以看到抛出异常 - 在这种情况下是通过简单加载元数据页面 - 关于被中止的通信对象:
The communication object, System.ServiceModel.Channels.TransportReplyChannelAcceptor+TransportReplyChannel, cannot be used for communication because it has been Aborted.
跟踪文件中没有指示问题的先前日志。我们每分钟监控它以确保它正在运行(因为出现此问题)并且我可以在元数据页面突然开始报告它处于中止状态之前看到许多成功的请求。
此时恢复的唯一方法是重启我的服务。我以前曾多次使用WCF,但从未作为WF的前端。我以前从未遇到过我的WCF服务这个问题,因此WorkflowServiceHost会发生什么事情?
谢谢!
更新:
以下是WCF的一些跟踪日志:
答案 0 :(得分:0)
如果您没有,请添加此项。除非您中止(或重新启动服务),否则异常会使通道出现故障 What is the best workaround for the WCF client `using` block issue?
catch (Exception e)
{
...
client.Abort();
throw;
}