在wf4工作流程中,持久活动失败

时间:2011-10-13 16:46:50

标签: c# workflow-foundation-4

我遇到问题在wf4中保留工作流程。

我无法使用Persist活动保留工作流程。 我也不能从我注入到工作流程中的类中包含的方法继承工作流程,然后使用InvokeMethod活动从工作流程中调用该工作流程

如果我这样做:

workflowApp = new WorkflowApplication(new actBTX(), inParams);
workflowApp.Run();
workflowApp.Persist();    

在创建工作流程的工厂方法中,我可以看到工作流程仍然存在。

我已经测试了我的工作流程,看看我是否在使用NoPersistZone:

        var prop = context.Properties.Find("System.Activities.NoPersistProperty");
        IsInNoPersistScope.Set(context, prop != null);

似乎我不是。

当我在工作流程之外时,我可以坚持这一事实告诉我,工作流程中的变量类型不是问题。

当持久性失败时,如果我使用Persist活动,则会停止整个工作流程。 方法调用抛出异常:

 Exception: The operation did not complete within the allotted timeout of 00:02:00

有什么想法吗?

1 个答案:

答案 0 :(得分:4)

好的我们已经解决了。

有一个数据对象没有很好地序列化。 当Persist击中它时,它会无声地崩溃(这是一件坏事)。

我们怀疑workflowApp.Persist()是有效的,因为工作流程没有在两者之间完全初始化

workflowApp.Run();
workflowApp.Persist();