Flo*_*res 8 workflow-foundation workflow-foundation-4
如何解决这个问题(在WF4中):
我在xaml中创建了一个工作流程并启动了它的几个实例,我有一个persistancestore,并且所有工作流程都保留在他们的工作流程中间的书签上.
现在我停止申请
如果我重新启动应用程序,一切都会恢复,很好地完成.
但是,如果我想在运行的实例持续存在后更改工作流定义,该怎么办?加载正在运行的工作流程(我能够找到)的唯一方法是以下方式:
WorkflowApplication wfapp = new WorkflowApplication(new WorkflowDefinition());
wfapp.InstanceStore = new SqlWorkflowInstanceStore(connStr);
wfapp.Load(wfGuid);
Run Code Online (Sandbox Code Playgroud)
因此,您需要工作流程定义,如果在持久性过程中发生了变化,那么事情就会出现严重错误.
解决这个问题的最佳方法是什么?
这个场景有点问题。无法将旧的工作流定义迁移到新格式。我已经做了一些有限的测试和一些添加/删除活动的场景,但尚未执行的情况很好。但我也遇到过严重错误的情况,包括重新执行已经完成的活动。
据我所知,除了跟踪用于创建工作流的 XAML/程序集的版本并检查何时要重新启动工作流以确定要使用的工作流版本之外,没有什么好的方法可以解决该问题。