我托管WCF作为Widnows服务,但我有处理WCF通道Faulted状态的问题。 ServiceHost上的故障事件从未升起。如何处理WCF上的故障状态? (托管在Windows服务)
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Single)]
public class Service1 : IService1
{
public string GetFault()
{
throw new Exception("Should went to fault..");
}
是否正确地使用它,我:
托管应用程序:
protected override void OnStart(string[] args)
{
_serviceHost = new ServiceHost(typeof(WCF_FaultTest.Service1));
_serviceHost.Faulted += _serviceHost_Faulted;
_serviceHost.Open();
}
void _serviceHost_Faulted(object sender, EventArgs e)
{
// never raise up..
}
故障状态我试着模仿这样吗?谢谢。
谢谢,但我已经尝试过(实际执行)。自定义IErrorHandler问题保持不变。每个异常在HandleError中都是正确处理的,但是ServiceHost上的Faulted事件仍然不会引发。(我想中止并在故障时重新创建ServiceHost) – Chatumbabub 2012-08-08 17:52:37