为工作流应用程序推荐设计模式

我正在开发一个用户可以执行任务/工作流的应用程序。 每个任务都由要执行的操作队列组成。 我希望能够在工作流程启动后能够输入用户。

例:

  • 任务开始
    • Action1启动
    • Action1结束
    • Action2启动
    • Action2结束
    • Action3需要用户输入(UI打开窗口以获取用户输入)
    • Action3获取用户输入
    • Action3开始了
    • Action3结束
  • 任务结束

我正在开发这个C#,我知道Workflow Foundation和C#中的任务。 它们可能有我需要的东西,但我也有兴趣听到从头开始这样做的设计模式。

你所描述的是序列工作流模式 。

Workflow Patterns计划和MSDN杂志中有更多工作流模式 。

我认为以下文章可以帮助您完成异步任务部分:

基于任务的异步模式

TPL和传统的.NET异步编程