WF综合技术演示的例子

http://tech.ddvip.com/2009-02/1235816506110040.html(本文来自)

本文源代码下载地址:

  http://flashview.ddvip.com/2009_02/WF0016.rar

  发一个以WF为中心的综合技术演示的例子,在这个例子我分别用WPF,WinForm,ASP.NET,Silverlight实现了四个客户端,每个客户端的UI风格与功能完全一样,便于大家使用

  WorkflowRuntime宿主使用WCF发布,提供了对Silverlight的跨域访问,提供了大字串传递的配置

  如果你对WPF,WinForm,ASP.NET,Silverlight引用WCF不熟悉,需用先学习WCF的知识

  WPF,WinForm,ASP.NET,Silverlight你只需用掌握一样就可以完成本例的客户端开发

  对数据库的操作,本例使用Ling To SQL ,果你对Ling To SQL不熟悉,需用先学习Ling To SQL的知识,或将这部分改为你所熟悉的数据库操作方式

  本例不太适合WF的初学者

  为了让大家对WF有一个总体的认识,以下说明我用问答方式来写

  问:如果我想让用户可以自定义流程,但用户不会写代码,该怎么做?

  答:建议用XOML无代码格式的工作流,实现方式看本例

  问:如果我流程分支的条件判断很复杂,而且总变,有什么方案?

  答:建议用rule外置方式,实现方式看本例

  问:WorkflowRuntime宿主用什么? [ IIS 加载项] , [Windows服务] , [Windows 应用程序], [ASP.NET 中Application 缓存] ,[COM+]

  答:建议用 [Windows服务] ,本例为了演示方便,使用的是[Windows 应用程序],

  问:如果使用[Windows 应用程序] 或 [Windows服务],使用什么方式与客户端通信

  答:建议使用WCF

  问:客户端使用什么?[WPF] ,[WinForm] ,[ASP.NET],[Silverlight]

  答:都可以,本例[WPF] ,[WinForm] ,[ASP.NET],[Silverlight]的客户端都提供了

  问:Silverlight如何访问 [Windows服务] , [Windows 应用程序]中的WCF服务

  答:在WCF服务添加一个跨域访问的服务,,实现方式看本例

  问:工作流模板提供方式? [DLL] ,[XOML文件] ,[数据库]

  答::建议使用[数据库]

  问:WF中有状态维护,有跟踪,还需要自已维护一个状态表吗?

  答:强烈建议,本例就自已维护了一个状态表

  问:关于流程设计器?

  答:对于XOML来说,[记事本],就是一个流程设计器,如果要提供一个可视化的流程设计器,只需操XOML文件既可,XOML是一个XML格式文件.也可使用WF提供的设计器控件本例没有提供可视化的流程设计器,对这方面感兴趣可以看我关于这方面的文章

  问:需要动态表单设计器吗?

  答:建议提供,否则将无法真正实现"让用户自已做流程"的目的,本例没的提供流程设计器,对这方面感兴趣可以看我关于这方面的文章

  问:如果不写代码,流程的具体结点功能如何实现?

  答:封装成自定义Activty,实现方式看本例

  问:如果不写代码,自定义Activty之间如何通信?

  答:使用DependencyProperty,实现方式看本例

  问:可以在工作流启动或运行环节中向流程传递数据吗?

  答:可以,实现方式看本例

  问:可以在工作流启动或运行环节中动态添加或删除节点吗?

  答:可以,本例没的提供,对这方面感兴趣可以看我关于这方面的文章

  目录说明

WF综合技术演示的例子

  系统架构说明

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

  项目说明

WF综合技术演示的例子

  数据库说明

  wfTemplate 模板表

 

 

 

 

  编号

 

 

  字段

 

 

  中文对照

 

 

  数据类型

 

 

  外创

 

 

  模创

 

 

  外改

 

 

  模改

 

 

  主键

 

 

  外键

 

 

  非空

 

 

  唯一

 

 

  字段值选项

 

 

  选项代表含义

 

 

  说明

 

 

 

 

 

 

  templateID

 

 

  模板编号

 

 

  nvarchar(50)

 

 

  √

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  √

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  templateEdition

 

 

  模板版本

 

 

  nvarchar(50)

 

 

  √

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  √

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  xoml

 

 

  模板数据

 

 

  nvarchar(MAX)

 

 

  √

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  √

 

 

 

 

 

 

 

 

 

 

 

  <XML>

 

 

 

 

 

 

  rules

 

 

  规则数据

 

 

  nvarchar(MAX)

 

 

  √

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  √

 

 

 

 

 

 

 

 

 

 

 

  <XML>

 

  wfTaskList 状态表

 

 

 

 

  编号

 

 

  字段

 

 

  中文对照

 

 

  数据类型

 

 

  外创

 

 

  模创

 

 

  外改

 

 

  模改

 

 

  主键

 

 

  外键

 

 

  非空

 

 

  唯一

 

 

  字段值选项

 

 

  选项代表含义

 

 

  说明

 

 

 

 

 

 

  instanceID

 

 

 

  nvarchar(50)

 

 

 

  √

 

    

 

  √

 

    

 

 

 

 

 

  state

 

 

 

  int

 

 

 

  √

 

 

  √

 

   

 

  √

 

 

 

  0,1

 

 

  0活动,1完成

 

 

 

 

 

 

 

  token

 

 

 

  nvarchar(50)

 

 

 

  √

 

    

 

  √

 

    

 

 

 

 

 

  stateContent

 

 

 

  nvarchar(MAX)

 

 

 

  √

 

         
  

 

  result

 

 

 

  nvarchar(50)

 

 

  √

 

          
  

 

  value

 

 

 

  nvarchar(MAX)

 

 

  √

 

          

 

 

 

  客户端说明

  WPF

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

  WinForm

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

  ASP.NET

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

  Silverlight

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

  附一个测试例子

  场景

WF综合技术演示的例子

  流程

WF综合技术演示的例子

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

  测试

  本演示使用Silverlight客户端,其它客户端使用方式与本演示一样,同一流程可使用不同客户配合完成

  启动服务

WF综合技术演示的例子

  发布流程

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

  (1)001申请

WF综合技术演示的例子

WF综合技术演示的例子

  (2)002驳回

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

  (3)001再申请

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

  (4)002同意

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

  (5)003实施

WF综合技术演示的例子

  图片看不清楚?请点击这里查看原图(大图)。

  状态表信息

  图片看不清楚?请点击这里查看原图(大图)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值