【发布时间】:2015-10-07 19:42:16
【问题描述】:
我有一个 WorkflowApplication 来执行工作流。它支持在延迟活动上持久化工作流,并恢复它。为了恢复它,我使用了工作流实例 ID:
public void ResumeWorkflow(Guid instanceId)
{
var instance = WorkflowApplication.GetInstance(instanceId, this.instanceStore);
var wfApplication = new WorkflowApplication(
(Activity)businessProcess,
instance.DefinitionIdentity);
wfApplication.Load(instance);
}
这很好用,但我想根据 instanceId 以外的一些其他数据开始恢复工作流。例如,假设我的工作流程是一个短信聊天机器人,我可能想使用手机号码来恢复工作流程。
实际上,我想将手机号码用作关联句柄,但这些似乎仅在您的工作流中托管 WCF 服务时使用,这不是我们使用它们的方式。
最后,我应该补充一下,我们正在使用 SqlWorkflowInstanceStore,如果这样可以让事情变得更容易(也许我们可以查询实例存储以从电话号码或其他东西中找出实例 id?)
有什么想法可以解决这个问题吗?
【问题讨论】: