使用rehosted在活动中使用和调用书签

时间:2011-07-20 14:23:00

标签: workflow-foundation-4 bookmarks

我正在使用WF,我重新托管了设计师,一切都很好,直到我需要在我的自定义活动中等待工作流运行时的值,即我使用BOOKMARK制作的值。我在ConsoleApplication和它的工作中尝试了书签。 我在ConsoleApplication的主类中使用了以下代码:

AutoResetEvent syncEvent = new AutoResetEvent(false);
wa.Completed = delegate(WorkflowApplicationCompletedEventArgs r)
{
    syncEvent.Set();
};

wa.Run();
wa.ResumeBookmark("bookmarkName", Console.ReadLine());

syncEvent.WaitOne();

但是在我的rehosted项目中,我需要调用许多工作流程。不仅1.我不能在运行前指定它。 对于这种方法:

wa.ResumeBookmark("bookmarkName", Console.ReadLine());

第一个参数:书签的名字,我试过,我发现我可以将所有书签命名为同名。 关于第二个参数,我如何传递每个工作流的值,而一些工作流有多个书签。 我必须从许多地方,asp.net页面,数据库和其他地方读取价值。 我确定在WF 4.0中有类似的东西,但我没有找到它。请你帮我:) 谢谢。

1 个答案:

答案 0 :(得分:0)

您需要跟踪每个工作流程Id,并在创建书签时记录该ID。一旦您希望返回工作流程,您可以搜索具有匹配ID的那个,然后恢复您的书签。