2009-05-25 49 views
1

alt text http://home.elka.pw.edu.pl/~pkolodzi/Capture.PNG工作流持久性 - WebServiceInputActivity

我創建了IAdder接口兩種方法:帕薩特PassB。我的工作流程開始於webServiceInputActivity1,它由PassA遠程調用激活。我的工作流程中的另一個元素是另一個webServiceInputActivity2元素。這次「IsActivating」屬性設置爲false。我希望我的工作流程能夠在第一個活動結束後持久化(這確實會返回void)。應通過調用PassB Web方法重新激活工作流程。

這裏發佈工作流程的Web服務和調用帕薩特後,我得到什麼:

System.InvalidOperationException: Workflow with id "b0c5f9dd-57f3-427f-b172-17d4663f7eaf" not found in state persistence store. 
    at System.Workflow.Runtime.Hosting.PersistenceDBAccessor.RetrieveInstanceState(Guid instanceStateId, Guid ownerId, DateTime timeout) 
    at System.Workflow.Runtime.Hosting.SqlWorkflowPersistenceService.LoadWorkflowInstanceState(Guid id) 
    at System.Workflow.Runtime.WorkflowRuntime.InitializeExecutor(Guid instanceId, CreationContext context, WorkflowExecutor executor, WorkflowInstance workflowInstance) 
    at System.Workflow.Runtime.WorkflowRuntime.Load(Guid key, CreationContext context, WorkflowInstance workflowInstance) 
    at System.Workflow.Runtime.WorkflowRuntime.GetWorkflow(Guid instanceId) 
    at System.Workflow.Activities.WorkflowWebService.Invoke(Type interfaceType, String methodName, Boolean isActivation, Object[] parameters) 
    at PersistanceWebServiceWorkflow.Workflow1_WebService.PassA(Int32 a) in C:\Users\djpiter\AppData\Local\Temp\2dnwfnsn.cs:line 39 

你有什麼想法我做錯了什麼?

PS :(數據庫設置正確。我測試的控制檯應用程序和延遲活動主辦工作流程。我還添加了必要的行web.config文件。)

親切的問候 PK

回答

0

如果其中一個活動會引發異常,則會從數據庫中刪除工作流狀態信息。在調試 - 異常 - 公共語言運行時異常中配置「運行你的工作流調試器」時配置「break when exception is throw」

+0

我的活動不應該拋出任何異常。我認爲我錯過了一些東西 - 在第一個活動工作流繼續到第二個活動之後......「異常拋出時中斷」選項在哪裏? – pkolodziej 2009-05-25 22:18:46