我託管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