工作在一个长时间运行的工作流,与WorkflowserviceHost, Win Server 2008 R2托管。最近发现appFabric在管理工作流实例恢复、空闲实例、失败实例等方面有很大的帮助。
得到一个基本的序列活动:它发送一封请求批准的邮件,然后遵循"接收和发送"来接收响应。最后一个活动允许在持久化存储中自动持久化。(这是一个很棒的功能!)(此序列还使用基于工作流实例Guid的内容关联。)
现在我有点卡住了,因为如果审批人没有将消息发送到"接收和发送"活动,我需要在延迟几天后重新启动序列(发送电子邮件)。
我的问题是:如何实现延迟定时器?在流程图中使用带有"while"控制流的"接收和发送"旁边的选择分支?(或并行活动?)
在AppFabric中有什么要配置的吗?我会在AppFabric文档(r. jacobs视频)中找到这些信息吗?你有一个简洁的例子吗?
基本方法是使用带有包含Delay作为超时触发器的分支的Pick活动。如果在receive中收到了适当的消息,则一切正常。如果没有触发Delay,则执行其工作并循环返回到Pick的顶部。