Asynchronous 实现执行异步操作的自定义Windows工作流活动

Asynchronous 实现执行异步操作的自定义Windows工作流活动,asynchronous,workflow,workflow-foundation,workflow-activity,Asynchronous,Workflow,Workflow Foundation,Workflow Activity,我在概念上遇到了一些问题,无法找出如何最好地实现这一点。。。我想为Windows工作流创建自定义活动类。该活动必须调用第三方库方法,该方法本身异步运行另一个进程,可能需要几秒钟到几小时才能完成。这个库为我提供了轮询方法结果或订阅指示其完成的事件的能力。在我的非工作流应用程序中,我通常只订阅该事件,但在工作流的情况下,这似乎不合理。我也不确定如何最好地实施投票方案。有人能推荐一些类似问题的指针吗?柯克·艾伦·埃文斯(Kirk Allen Evans)写了一篇关于这方面的有趣文章,并给出了一些非常好

我在概念上遇到了一些问题,无法找出如何最好地实现这一点。。。我想为Windows工作流创建自定义活动类。该活动必须调用第三方库方法,该方法本身异步运行另一个进程,可能需要几秒钟到几小时才能完成。这个库为我提供了轮询方法结果或订阅指示其完成的事件的能力。在我的非工作流应用程序中,我通常只订阅该事件,但在工作流的情况下,这似乎不合理。我也不确定如何最好地实施投票方案。有人能推荐一些类似问题的指针吗?

柯克·艾伦·埃文斯(Kirk Allen Evans)写了一篇关于这方面的有趣文章,并给出了一些非常好的代码示例

我仍然在学习WF。。。为什么Kirk不直接调用Workflow.Ftp.FtpCallback()中的ActivityExecutionContext.CloseActivity()?相反,他将某些内容推送到他创建的队列上,然后有一个队列侦听器调用CloseActivity()。这似乎是一个额外的开销很多。