45、应用中嵌入状态机工作流的详细指南

应用中嵌入状态机工作流的详细指南

1. 状态机工作流概述

状态机工作流与顺序工作流有相似之处,但也存在概念上的主要差异。两者都有开始和结束,且按顺序执行步骤。不过,状态机工作流专注于单个元素在不同状态间的转换,这个元素可以是文档或数据库记录。顺序操作在状态改变时执行,在状态内部,能进行分支、等待事件、调用外部方法等操作,就像顺序工作流一样。

2. 设计状态机工作流

以处理用户费用报告为例,其流程如下:
- 用户创建费用报告并保存为草稿,准备好后通过客户端应用提交给经理审批。
- 报告进入已提交状态,经理审批,若批准则进入已批准状态;若拒绝,工作流通知用户并结束实例,用户可后续重新提交。
- 报告批准后,通知财务部门付款,付款处理完成后,通知用户支票号码,报告进入最终的已完成状态。

使用 Visual Studio 2008 设计此状态机工作流的步骤如下:
1. 创建一个名为 ExpenseReportWf 的新状态机工作流控制台应用程序项目,可使用 Visual Basic 或 C#,本例使用 VB。
2. 将项目模板中的默认工作流(Workflow1)重命名为 ExpenseReport,该示例适用于基于代码或 XAML 的工作流。
3. 为工作流添加属性以接收参数,代码如下:

Private _userId As String
Public Property UserId() As String
    Get
        Return _userId
    End Get
    Set(ByVal value 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值