Windows Workflow Foundation 基础与运行时服务详解
1. 工作流模型选择
在工作流设计中,状态机和顺序工作流模型各有适用场景。对于基于人工的流程,如文档审批流程,文档可能经历的草稿数量难以提前规划,且可能在接近发布状态时因事实变化回到初始状态,状态机模型能很好地应对这种不确定性。而制造流程也适合状态机工作流,因为其存在众多不同状态,且状态转换间的工作较少。
选择状态机、顺序工作流模型还是自定义模型,关键在于模型能否准确反映流程的实际情况。虽然很多问题可以用这两种模型中的任何一种解决,但判断标准是模型对现实的自然呈现程度。若这两种方法都不能很好地建模工作流,还可以创建自定义根活动来定义自己的工作流类型。
2. 自定义根活动
不局限于之前描述的两种根活动的执行语义,通过创建自定义根活动,可以实现任何所需的执行行为(只要其逻辑能以代码表达)。常见的自定义控制流模式或工作流建模风格有 Harel 式状态图、Petri 网和流程图等。
3. 工作流托管
工作流的活动模型和组合方式固然重要,但要将其转化为可执行的应用程序,运行时环境至关重要。Windows Workflow Foundation 运行时具有低开销和高扩展性的特点,几乎任何运行时行为都可定制,包括线程模型。
3.1 运行时托管
在 Visual Studio 2005 扩展中,创建新的工作流项目(顺序或状态机)时,会创建一个非常基本的托管环境。以下是一个基于控制台的工作流主机示例代码:
static void
超级会员免费看
订阅专栏 解锁全文
41

被折叠的 条评论
为什么被折叠?



