我有一个WCF服务。
在某些情况下,服务失败,需要手动干预。
我希望能够将异常传递给服务主机并导致它失败,而不是仅导致特定调用失败。
该服务是一种异步MSMQ服务,并托管在自定义应用程序中。
答案 0 :(得分:2)
这个主题有关于如何在服务和主机之间进行通信的一些想法。基本上,你使用一个Singleton,两个部分都可以实例化和共享信息 - 小心线程同步。
How to communicate between WCF service and host application?
另一种选择是在服务遇到问题时使用IErroHandler设置一些标志,然后在处理任何请求之前使用IDispatcherMessageInspector检查标志。它不会阻止主机,但它会阻止进一步的服务工作,直到您重新启动。