2011-05-06 46 views
0

究竟可能是工作流服務主機的根源拋以下類型RedirectionException的:什麼會導致Windows Workflow Service中的RedirectionException?

 
System.ServiceModel.Channels.RedirectionException: The requested resource has moved to the one of the following locations: 
    http://blah.mydomain.com/MyWorkflowService.svc 
    at System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult result) 
    at System.ServiceModel.Activities.Dispatcher.ControlOperationInvoker.InvokeEnd(Object instance, Object[]& outputs, IAsyncResult result) 
    at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeEnd(MessageRpc& rpc) 
    at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage7(MessageRpc& rpc) 
    at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet) 

RedirectionException的文檔在WCF方面通用的,我得到了它是,但我不是確定觸發工作流服務主機自己拋出它的條件是什麼,並且似乎沒有關於它的任何文檔。

回答

0

我不認爲我見過這種情況,但根據Reflector,它是在WF實例無法鎖定時發生InstanceLockedException的結果。這可能是因爲另一個WorkflowServiceHost鎖定並加載了它,或者是因爲實例存儲數據庫中存在一些不一致。

+0

謝謝,我很懶,不想拆解/搜索它。拋出這些問題的奇怪例外。在我的特殊情況下,我在服務器羣中運行,這可能是由於ServerA上長時間運行的操作以及對ServerB進行的相同WF服務的輔助調用而發生的。所以在這種情況下,ServerB必須超時獲取鎖並拋出RedirectionException試圖告訴客戶端去ServerA。 – 2011-05-09 15:39:01

+0

是的,這聽起來很合理。唯一的問題是客戶通常不能這樣做:-( – Maurice 2011-05-09 17:23:41

相關問題