我正在与 Visual Studio 2010 的候选发布者合作,使用 Wf4 编写用于批准资源请求的新工作流。在我的工作流程中,如果请求未获得批准,我希望请求在几天后过期。我们在 WF 3.5 (Visual Studio 2008) 中通过将延迟计时器添加到与等待批准者来批准请求的 EventDrivenActivity 并行的 EventDrivenActivity 中来做到这一点。如果延迟在批准之前到期,则 EventDrivenActivity 将终止请求。有谁知道在 WF4 中是否有类似的机制可以做到这一点?
最佳答案
在 WF4 中,这是使用 Pick 事件以相同的方式完成的。一个 Pick 有多个 PickBranch child ,每个 child 都有一个触发器和一个 Action 。执行每个触发器的触发器并将包含延迟、接收或您正在等待的任何其他内容。 Action 包含需要执行的任何内容。仅执行与第一个要完成的 Trigger 关联的 Action,其他触发器将被取消,其他 Action 将被跳过。
关于Windows Workflow Foundation 4 (WF4) 延迟,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2526283/