我在尝试获取工作流(WF4)以调用长时间运行的WCF服务时遇到问题,然后在WCF服务完成时恢复处理。下图简要概述了我想要实现的目标。如果你能指出我展示这种情况的任何样本(或非常类似的东西),我将不胜感激。有关信息,我已经看到很多WF到WF的例子并没有真正帮助。
答案 0 :(得分:0)
您是否考虑过相关性?这是由WF4为您处理的吗?在WF3中,这不是开箱即用的。这意味着如果您从长时间运行的服务中发送请求,WF3将不知道将响应消息路由到哪个工作流实例。
如果没有相关性,WCF的回调将不会被路由到"等待"工作流实例。
<强>更新强>
您是否正在将相关令牌写入回调消息?
更新
抱歉,我没有例子,因为我不是WF4用户。我必须实现与WF3的相关性,因为它没有提供该功能。为此,我创建了一个查找服务,它将相关值映射到工作流实例guid,然后入站调用可以通过wsHttpContextBinding定位特定实例。
但是WF4使您能够初始化并遵循每个基于发送和接收的活动的相关性。你可以在这里阅读:
http://msdn.microsoft.com/en-us/library/ee358755(VS.100).aspx