一、Work flow简介:
Work flow 是一组基础运行组件和开发工具组成的工作流平台,而不是一个完整的产品。work flow只包含一些基础的类和开发工具,所以要在此基础上进行开发。才能运用。简要的说:Work flow包括基础类库,运行时和开发工具。
Work flow与asp.net程序是异步的,用UI去查看workflow节点的状态。Workflow是一组活动组成的。
Work flow在一个宿主进程中运行:任何应用程序。
二、Work flow类型:
顺序型:如生产线上,第一步完了第二步,一直下去,直到完成。只有一个结果的。
状态型:(事件工作流)用于审批流程。如分货。满足什么样条件的货,放哪一堆。
数据驱动:数据的改变来更新work flow状态。
三、Work flow组件:
微软提供的Work flow 组件有
基础活动库:Activity(work flow的基础单元),相单于asp.net的控件。自定义Activity相当于asp.net 自定义控件.
运行时引擎:宿主程序调用work flow时用到的。
运行时服务:包括持久化和跟踪的。如:把工作流的运行状态保存在SQL数据库里,或设置保存运行日志。
可视化编辑器
三、开发工具:
Visual Studio 2005 插件:
Visual Studio 2005 extensions for .NET Framework 3.0 (Windows Workflow Foundation)
Visual Studio 2008(有集成在里面,不需要插件)
四、示例学习Work flow:
一个Work flow 文件可选择的表示方式有两种一个是.cs(C#文件格式),另一个.xoml(用xml格式表示)
Work flow 的基本元素是Activity,事实上一个work flow可以是一个Activity,一个Activity也可以是一个work flow.
Work flow中的数据交换类型:
Work flow与宿主环境交换数据
HandleExternalEventActivity:响应数组中发生的事件。如单击按钮,输入新数据。
CallExternalMethodActivity:能过参数把workflow的形况(状态)传出去(宿主)。
WOrk flow 之间数据交换:
WebServiceInputActivity
WebServiceOutputActivity
InvokeWebServiceActivity
以上三种是(.net 3.0的,基于webservice的数据交换)
SendActivity
ReceiveActivity
以上二种是基于(.net 3.5的,是上面三种的升版,基于wcf的数据交换).
示例下载
PPT下载