这一篇我把WF中有关数据处理的操作完全交给WCF处理,WF只关心流程的设计处理,至于底层数据如何操 作并不需要关心。这在很大程序上减少了应用程序之间的耦合度。
SendActivity:客户端活动,用于模拟 WCF 服务操作的同步调用。
在WF中可以利用SendActivity完成对WCF的调用,不需要用传统的方式,先生成一个WCF代码,然后调 用相应的方法。在项目中我们触发外部事件是靠"HandleExternalEvent activity",在事件中写相关的业 务逻辑代码,觉的耦合度高了点,因为WF不光要设计工作流,而且需要和数据库打交道。
解决方案:在HandleExternalEvent activity后面加上一个SendActivity,此时HandleExternalEvent 的事件的唯一作用就是给SendActivity参数赋值。由于项目中的状态比较多,我展示员工状态的活动图:
SendActivity属性设置:
1:ChannelToken:SendActivity 在建立其自身与客户端通道之间的关联时所使用的 ChannelToken。
2:Name:获取或设置此实例的名称。此名称必须符合工作流项目中使用的编程语言的变量命名规则。
3:EndpointName : 用于与服务通信的Endpoint 。
4:ServiceOperationInfo:WCF服务接口。
5:OwnerActivityName :关联的 Activity 的名称 。
6:Parameters:方法中的参数。这个参数需要后台代码支持,这里分为两步:
时间: 2025-01-26 17:12:53