重新使用接收活动

时间:2011-02-24 12:50:38

标签: c# workflow workflow-foundation-4

我在工作流程中是一个完全的菜鸟!

我想托管多个工作流程(作为服务,bog标准工作流程);但是我也希望他们分享一个共同的活动(ActivityX)。现在,ActivityX应该阻止/空闲当前工作流,直到它收到接收呼叫。

我可以重复使用此活动吗?我猜我需要把它作为服务,asmx?但是如何让它阻止它所使用的工作流 - 如果我将它拖到那些试图调用服务的工作流上,而不是等到那个调用发生。

有人可以提出一些建议吗?它不一定是接收活动,但我需要一种方便的工作流空闲方式,直到特定对象(或者如果需要,一组参数)到达。

我对WF 4.0的理解非常糟糕,显然遗漏了一些东西。

谢谢,

皮特。

1 个答案:

答案 0 :(得分:2)

如果您使用Receive活动,则必须使用WorkflowServicehost作为主机,并且不能使用WorkflowApplication或WorkflowInvoker,因为它取决于BaseServiceHost中的WCF基础结构。

使用书签创建阻止活动。您创建一个书签,工作流程将停止,直到您恢复该书签,至少使用默认选项。实际上,接收活动正是将此作为使工作流等待WCF消息的一部分。