Windows 工作流概述

本主题适用于 Windows Workflow Foundation 4。

工作流是一组存储为模型的名为活动**的基本单元,活动用于描述实际进程。工作流提供了一种方法,用于描述多项短期运行或长期运行的工作之间的执行顺序和依赖关系。此工作从头到尾地贯穿模型,并且活动可以人工执行或由系统功能执行。

工作流运行时引擎

每个正在运行的工作流实例都是由进程内运行时引擎创建和维护的,宿主进程通过以下类之一与其交互:

上述每个类对表示为负责活动执行的 ActivityInstance 的核心活动运行时进行包装。在一个应用程序域中可以并发运行多个 ActivityInstance 对象。

上述三个宿主交互对象中的每一个都是从称为工作流程序的活动树中创建的。使用这些类型或对 ActivityInstance 进行包装的自定义宿主,可以在包括控制台应用程序、基于窗体的应用程序、Windows 服务、ASP.NET 网站和 Windows Communication Foundation (WCF) 服务在内的任何 Windows 进程内执行工作流。

Dd489465.44c79d1d-178b-4487-87ed-3e33015a3842(zh-cn,VS.100).gif

工作流组件之间的交互

下图演示工作流组件彼此之间如何进行交互。

工作流交互

在上图中,WorkflowInvoker 类的 Invoke 方法用于调用多个工作流实例。WorkflowInvoker 用于不需要由宿主管理的轻型工作流;需要由宿主管理的工作流(如 Bookmark 恢复)必须改用 Run 来执行。无需等待一个工作流实例完成即可调用下一个工作流实例;运行时引擎支持同时运行多个工作流实例。调用的工作流如下:

另请参见

其他资源

BizTalk Server 2006 or WF?Choosing the Right Workflow Tool for Your Project