WCF请求如何与多个工作流实例关联



场景如下:

我有多个客户端,它们可以使用WCF请求在工作流服务器上注册自己,以接收某种通知。将使用另一个接收活动从外部系统接收通知的信息。然后,工作流应该获得通知信息,并使用发送活动和回调相关性回调所有注册的客户端(客户端暴露了在其中实现的回调接口以及最初与注册请求一起传递的端点地址)。"日志运行工作流服务"方法与持久存储一起使用。

现在,我正在寻找某种方法,将从外部系统接收到的通知的传入信息与之前在注册请求时创建的持久化工作流实例关联起来,以便使用已经随注册请求一起传递的端点来通知所有客户端。WF 4.0是否能够在收到通知的信息时恢复和执行多个工作流实例,而无需手动存储端点并通过它们?如果是,我该怎么做?

此外,如果我这样做的方法不正确,那么请建议我使用WCF服务进行此类系统的最佳实践。

非常感谢你的帮助。

当您在工作流服务中使用请求关联时,关联键必须始终与单个工作流实例匹配,不能让多个工作流实例对单个消息做出反应。因此,您要么需要使用所有不同的关联键来多播消息,要么以其他方式恢复工作流实例。另一种方法可以是将请求存储在某个位置,如SQL表,并让工作流在需要通知客户端时定期检查该位置。

最新更新