是否有一种方法可以从未处理的异常中恢复,而不涉及取消、终止或中止工作流?
我想要做的是让工作流重新启动,或者如果可能的话,简单地记录异常。我的工作流程是长期运行的,并且托管在WorkflowApplication中,它位于Windows Service中。
到目前为止,如果遇到未处理的异常,服务处于“已启动”状态,但我的工作流程却处于停滞状态,我希望尽可能地“启动”该工作流程,即使它必须完全重新启动它的序列。
在这种情况下需要补偿吗?
发布于 2010-08-19 02:36:11
如果使用工作流持久性并中止,则工作流将能够从存储区中上次保存的状态重新启动。在工作流程中的关键位置添加持久化活动将确保过去保存的状态是重新启动的神点。
请注意,对于作为主机的WorkflowApplication,您必须自己重新加载它。最好的方法是向Aborted属性添加一个回调,该属性在工作流中止时触发。在这里,您可以创建一个新的WorkflowApplication,加载相同的工作流实例并恢复它。
https://stackoverflow.com/questions/3505927
复制相似问题