一个简单的工作流设计笔记
2006-02-15 17:56
288 查看
因项目需要一个类似于工作流的框架,而WWF好像是为2005的,而且时间较急,研究WWF没时间,况且此框架并不需要很复杂,所以上网看了一些资料就决定自己干.
大体的框架如下:
一个CWorkFlow对应多个CWorkStep, 一个CWorkStep对应一个CAction
将业务逻辑封装到CAction里,在数据库配置CWorkStep,然后用反射得到CAction,就可以执行CAction
里的逻辑了.
CWorkFlow就几个方法,实现了就差不多了.
/// <summary>
/// IWorkFlow 的摘要说明。
/// </summary>
public interface IWorkFlow
{
/// <summary>
/// 从数据库装载工作流
/// </summary>
void LoadWorkSteps();
/// <summary>
/// 为执行工作流作准备
/// </summary>
bool BeginExecute();
/// <summary>
/// 执行下一步骤
/// </summary>
void NextWorkStep();
/// <summary>
/// 执行工作流
/// </summary>
/// <returns></returns>
void Execute();
/// <summary>
/// 工作流完成后的处理
/// </summary>
void EndExecute();
/// <summary>
/// 当工作流因某种原因暂停的时候能够继续下去
/// </summary>
void Continue();
/// <summary>
/// 将当前工作流作的一切还原,并重新开始
/// </summary>
void Restart();
/// <summary>
/// 将当前工作流作的一切还原
/// </summary>
void Revert();
/// <summary>
/// 暂停当前步骤
/// </summary>
void Pause();
}
执行时大概就是这样
胡乱的搞了几下,居然还似模似样的
,用起来还可以,哈哈
写篇随笔留作纪念,以后研究研究WWF.
大体的框架如下:
一个CWorkFlow对应多个CWorkStep, 一个CWorkStep对应一个CAction
将业务逻辑封装到CAction里,在数据库配置CWorkStep,然后用反射得到CAction,就可以执行CAction
里的逻辑了.
CWorkFlow就几个方法,实现了就差不多了.
/// <summary>
/// IWorkFlow 的摘要说明。
/// </summary>
public interface IWorkFlow
{
/// <summary>
/// 从数据库装载工作流
/// </summary>
void LoadWorkSteps();
/// <summary>
/// 为执行工作流作准备
/// </summary>
bool BeginExecute();
/// <summary>
/// 执行下一步骤
/// </summary>
void NextWorkStep();
/// <summary>
/// 执行工作流
/// </summary>
/// <returns></returns>
void Execute();
/// <summary>
/// 工作流完成后的处理
/// </summary>
void EndExecute();
/// <summary>
/// 当工作流因某种原因暂停的时候能够继续下去
/// </summary>
void Continue();
/// <summary>
/// 将当前工作流作的一切还原,并重新开始
/// </summary>
void Restart();
/// <summary>
/// 将当前工作流作的一切还原
/// </summary>
void Revert();
/// <summary>
/// 暂停当前步骤
/// </summary>
void Pause();
}
执行时大概就是这样
胡乱的搞了几下,居然还似模似样的
,用起来还可以,哈哈
写篇随笔留作纪念,以后研究研究WWF.
相关文章推荐
- 结合企业OA工作流业务需要,设计一个简单的工作流系统
- 简单工作流引擎是按一个单据的(类型),单据的(主键) 来处理流程步骤的,这个就是工作流设计的核心思想
- c#学习笔记之九 事件(event)的使用,一个简单的例子揭示其设计理念
- 简单工作流引擎是按一个单据的(类型),单据的(主键) 来处理流程步骤的,这个就是工作流设计的核心思想
- HTML入门笔记27-HTML一个简单的表单设计
- 简单工作流引擎是按一个单据的(类型),单据的(主键) 来处理流程步骤的,这个就是工作流设计的核心思想
- C++笔记1: 单例模式。(一个简单的设计模式在C++中复杂出翔。。)
- Unreal Engin_画廊制作笔记_001<设计草图,利用BSP快速搭建简单场景>
- 转载:Beginning WF 4.0翻译——第一章(创建一个简单的工作流)
- j2eelib(1) —— 一个DAO模式的简单设计
- nodejs笔记四--创建一个最简单的 express 应用
- 设计一个简单的空间配置器, JJ::allocator
- Linux内核设计第三周——构造一个简单的Linux系统
- C++如何设计一个不含指针的类 (Boolan笔记第一周)
- VS2010 C++ MFC框架学习笔记1 - 创建一个简单的加法计算器(1)
- 最简单 的 一个存储过程的详细建立与执行 (刚刚学习 做点笔记)
- Silverlight学习笔记一(理解一下机制,使用一下布局,实现一个简单的用户登录)
- 吕鑫MFC就业培训宝典学习笔记—创建一个简单的win32应用程序(2-1)
- Linux内核设计第三周——构造一个简单的Linux系统
- 任务二:设计一个简单的分数类