如何从客户端恢复挂起的Windows Workflow Service?

时间:2016-03-11 20:02:47

标签: workflow-foundation-4

我创建了一个Workflow Server并在IIS中托管它。我有一个示例站点,它有一个服务引用,并通过创建服务对象来调用工作流服务。一切正常。

但是如果工作流程中发生异常,它将暂停工作流程。我可以在SQL Persistence存储数据库中看到它。

但是如何从客户端站点恢复此工作流程?

1 个答案:

答案 0 :(得分:0)

我想我明白了。暂停工作流时,您必须使用Appfabric显式恢复它。但如果工作流程为Abandon,则工作流程服务将在下一次命中时恢复工作流程。在此之前,它将保存在SQL Persistence存储中。

要更改Unhandled Exception的默认行为,请将以下内容放在web.config的<behavior>部分中。

<workflowUnhandledException action="Abandon" />

我试过这个。当异常发生时,它将转到catch并执行我给出的命令。但它不会暂停工作流程。它只是放弃它。后来我修复了问题并使用CorreationID调用我的工作流程的第二部分,它恢复了工作流程并完成了它。

希望这能帮助像我这样的穷人。 Workflow Foundation没有太多文档,几乎所有演示都在基本的控制台应用程序中。这是一场斗争。 :(