2012-01-11 82 views
0

我目前有一臺作爲Windows Workflow Foundation 4 Web服務運行的狀態機。此解決方案適用於長時間運行的工作流程,因此它也使用SqlWorkflowInstanceStore。我遇到的問題是我找不到恢復暫停的工作流實例的解決方案。我在網上看到的例子似乎不適用於狀態機。這種混淆似乎來自於我沒有端點來引用創建適當的WorflowControlClient對象所需的端點。在Windows Workflow Foundation 4中恢復掛起的狀態機工作流實例

任何幫助,將不勝感激。

回答

0

我在我的服務的同一子目錄中創建了一個web.config文件。然後,對於每個接收操作,我必須在新創建的web.config中定義一個端點。然後,我可以將其他端點定義添加爲workflowControlEndpoint。

<endpoint address="wce" binding="basicHttpBinding" name="wceEndpoint" kind="workflowControlEndpoint"/> 
<endpoint address="" binding="basicHttpBinding" name="WorkFlowCreated" contract="IWorkFlowCreated" /> 
<endpoint address="" binding="basicHttpBinding" name="WorkFlowUpdated" contract="IWorkFlowUpdated" /> 

然後就有可能創造WorkflowControlClient

WorkflowControlClient controlClient = new WorkflowControlClient(
    new BasicHttpBinding(), 
    new EndpointAddress(new Uri("http://sitepath/general/1.0.0/General.xamlx/wce"))); 
controlClient.Unsuspend(instanceId);</code>