日期:2014-05-18  浏览次数:20716 次

关于工作流的问题
最近要做一个工作流(.net、C#):要保存设计好的流程,下次打开程序时,自动调出上次的工作流,请问有什么好的方法吗?

------解决方案--------------------
要保存设计好的流程,下次打开程序时,自动调出上次的工作流。这个从本质上就是把对象实例序列化成xml入库,和把xml反序列化成对象的过程。

工作流本身实际上不过是一系列对象的状态书签(就象看书,看到那一页了,放个书签,下次直接打开书签所指的页)

具体详解参看《wf本质论》(这本书还行,是目前我能见到的唯一的一本wf工作流引擎的中文资料,直指wf核心思想,虽然实际我是想找本应用实例的书,不过没找到。索性的是这本书在本质原理部分描述的很清晰,让我有种拨云见日之感)
《wf本质论》电驴下载:
http://lib.verycd.com/2007/11/06/0000169893.html
------解决方案--------------------
我恰好做了一个这个项目,可以大概说说
工作流的XML存储结构:
根节点下存储两个分支
1 Steps分支,负责存储各个流程节点,其子节点包括每个流程节点的名称,ID,自定义信息等。
2 Flows分支,负责存储各条连接线,描述起止信息。

每个模板XML文件复制一份填写上实际信息,例如某节点状态是激活还是跳过,中间承载了什么样的自定义信息等,就成为一个继承该模板行为的实例
------解决方案--------------------
我是06年初开始接触WWF,都是用的NET2.0
整个项目分为,自定义活动的开发(包括人工活动,子流程活动,循环活动,路由活动,并行活动等,异常处理活动),工作流设计器,表单设计器。这个项目的英文文档我都看晕了(国外发的第一本相关书籍是Presenting Windows Workflow Foundation, Beta Edition 
),那时国内没任何中文资料。目前国内资料越加丰富楼主使用会方便很多的。