绑定外部事件(指工作流内部事件在宿主中触发)

1.InterfaceType要绑定到标记为[System.Workflow.Activities.ExternalDataExchange()]的一个接口上

2.EventName 要绑定到该接口声明的一个事件,事件格式最好与Invoked的事件签名一至

(object sender, ExternalDataEventArgs e)

e参数可以通过重写ExternalDataEventArgs类进行括充,下例就重写了

(事件用的是2.0的写法,也可以使用传统写法)

3.引擎中要加载ExternalDataExchange服务

4.ExternalDataExchange服务,要加载实现[1]所绑定接口类的实例

5.运行到HandleExternalEventActivity结点后,会进入idle状态,苏酲时间为9999-12-31

6.只有当宿主中触发绑定的事件后才会继续向下运行。

7.下例中如果所传的“InstanceId”与当前实例的[InstanceId]不一至时会报错

8.触发事件时的两个参数值会传入HandleExternalEventActivity的Invoked事件对应的参数,也会赋给参数映射中的设定

9.触发事件时 对象.触发事件("发送对象", 当前操作的实例.InstanceId   )     将要触发该事件的工作流实例的GUID号传入是非常重要的,因为引擎中可能有多个实例在等待该事件,发送工作流实例的GUID号可以告诉引擎是要触发那一个实例事件

Invoked事件

外部事件发生后发生该事件

private void handleExternalEvent_Invoked(object sender, ExternalDataEventArgs e)

e.InstanceId

e.Identity

e.WaitForIdle

e.WorkHandler

e.WorkItem

该事件中的两个参数与参数映射中的设定是一样的

可进行类型转换以得到自定义的扩充: (事件标志)e).自定义存值

图解:

将在工作流应用中对应用作具体说明

转载于:https://www.cnblogs.com/foundation/archive/2006/10/04/521046.html

HandleExternalEventActivity相关推荐

  1. 工作流编程循序渐进(9:使用本地服务在宿主和工作流之间通信)

    工作流编程循序渐进(9:使用本地服务在宿主和工作流之间通信) 作者  朱先忠 [摘要]       在本篇中,首先详细分析本地服务有关概念,探讨本地服务在工作流运行时.工作流实例及工作流宿主间的地位及 ...

  2. WF流程设计器升级说明

    WF流程设计器升级说明 目录 WF流程设计器升级说明    1 通用版    1 1.可打开,设计,保存所的xoml格式的工作流文件    1 2.提供了规则绑定    2 3.提供了绑定EventD ...

  3. WF(9):本地服务之事件处理

    一:先来介绍两个活动 EventDrivenActivity和 ListenActivity. EventDrivenActivity是一个等侍事件触发的容器,EventDrivenActivity第 ...

  4. Activity容器控件

    IfElseActivity 1.IfElseActivity有两个IfElseBranch子控件,分别作为IfElse的两个分支容器,系统自动添加, 2.其中左边(为真件条)的IfElseBranc ...

  5. Activity功能控件

    CodeActivity CodeActivity提供了一个ExecuteCode事件,可绑定一个(ByVal sender As System.Object, ByVal e As System.E ...

  6. Workflow之Activity

    --SequenceWorkflowActivity 活动是Windows Worklow的基本组成块,准确的说,顺序工作流本身就是一个活动-SequentialWorkflowActivity.Se ...

  7. WF从入门到精通(第十章):事件活动 (转)

    在第八章("调用外部方法和工作流")中,你看过工作流怎样使用CallExternalMethod活动来和宿主应用程序进行通信.当工作流调用一个外部方法时,使用一个你提供的本地通信服 ...

  8. Windows Workflow HOL学习笔记(十二):创建状态基工作流

    W indows Workflow HOL学习笔记(十二):创建状态基工作流 本文内容来自Microsoft Hands-on Labs for Windows Workflow Foundation ...

  9. java中workFlowEvent_关于WorkFlow的使用以及例子

    近期做项目,项目需要用到工作流方面的技术,我在这里与大家分享一个workFlow学习的地址,共大家学习. 各文档的说明: F资料 ├─Activity │  │  1_Activity 类.doc │ ...

最新文章

  1. 安装Properties Editor插件,解决XXX.properties文件中文乱码的问题
  2. HTML中DOM对象的属性和方法的层级关系是怎样的?(目录即层次)
  3. Dijkstra算法的另一种证明
  4. OpenCV图像缩放resize各种插值方式的比较
  5. [翻译]在 .NET Core 中的并发编程
  6. adroid 中公里除时间_全长210.72公里!这条高速有望年底通车…(视频图文)
  7. 平昌一中高考2021成绩查询,2019年四川省平昌中学高考喜报
  8. jmeter监听器你真的会用了吗?每天早下班1小时的技巧来了~
  9. 如何备份MySql的数据库
  10. 我是如何通过思维系统实现年薪50万的?
  11. 该学学数据结构了,不会数据结构真是寸步难行啊。。。。。
  12. 旅馆业等领域旅客入住身份核验解决方案
  13. node-sass 安装失败,原因总结
  14. html里hr标签,HTML hr 标签
  15. 德国质量链接中国速度,奥迪一汽新能源汽车有限公司在电动化赛道上全速奔跑
  16. Paste for Mac(剪切板历史管理工具)
  17. LeetCode刷题笔记 双指针 基础应用
  18. 自动驾驶中的车道线检测算法汇总
  19. 如何提高PUE值 数据中心能耗详解
  20. 数据大放送之气候数据

热门文章

  1. 计算一个子网掩码有多少个有效ip地址_一个月有多少个工作日,你会计算了吗?...
  2. java字符串字典排序_java实现对map的字典序排序操作示例
  3. 计算机硬件中英对照,计算机硬件名称中英文对照表
  4. 如何把电脑文件传到虚拟机
  5. Python机器学习:梯度下降法006随机梯度下降法
  6. hyperworks安装教程linux,HyperWorks安装说明.ppt
  7. c c和java最大的区别是什么,“一般”和“一般”之间的区别是什么,类型在C ++和Java?...
  8. opencv+Java+android 灰度图像
  9. 并发测试工具_性能测试工具基本工作原理及基本操作流程
  10. 存储当时android,Android之外部存储(SD卡)