gpt4 book ai didi

c# - 如何在暂停/持久化后正确加载工作流?

转载 作者:行者123 更新时间:2023-11-30 16:33:33 25 4
gpt4 key购买 nike

使用这个 MSDN Article作为暂停和恢复的示例,人们会认为这非常简单。这就是我“暂停”工作流程的方式......

LastWfGuid = workflow.Id;
workflow.Unload();

非常简单,它应该持久保存到实例存储(我已经在这两行之前设置)并且我确实在实例 View 和 InstancesTable 中看到了条目。当我准备好恢复工作流程时,我会这样做...

workflow = new WorkflowApplication( myActivity, myWfArgs );
workflow.InstanceStore = wfStore;
workflow.Load(LastWfGuid);

那时我得到一个 InvalidOperationException 异常消息是...

Workflow inputs cannot be used with Load or LoadRunnableInstance, since they are only provided to new instances.

如果我无法加载以前保留的工作流,我该如何重新恢复它?我尝试简单地调用 Persist() 代替 Unload() 并且从外面看起来没问题,我没有收到任何异常。但是,工作流继续运行它的过程,这不是我正在寻找的。我想暂停然后继续我的工作流程。

最佳答案

在创建用于加载现有工作流实例的 WorkflowApplication 时删除 myWfArgs 参数。所以像这样:

workflow = new WorkflowApplication(myActivity);
workflow.InstanceStore = wfStore;
workflow.Load(LastWfGuid);

关于c# - 如何在暂停/持久化后正确加载工作流?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3046193/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com