ConditionedActivityGroup
1.可以通过定义条件触发CAG组中的某个Activity
2.拖入CAG中的每各个Activity 都有一个When Condition ,
When Condition有两种方式,一种是CodeCondition 一种是RuleConditionReferences
当When Condition条件满足时,在CAG的每个轮询周期内,该Activity 会执行一次
Activity 的When Condition可以不设,这时,该Activity只在第一次轮询时被执行,以后的轮询都不会被执行了
3.CAG有一个Until condition 属性,条件成立时,该CAG就退出轮询,结点完成
CAG轮询每一次新轮询开始时,会查看Until condition ,如果条件成立就退出,完成结点
CAG的Until condition 属性可以不设,这时只CAG轮询不到When Condition条件成立还成立的Activity时,才完成结点
4.在CAG的每个轮询周期内,只要有Activity的When Condition条件成立,该Activity就会被执行一次
在下一个CAG轮询周期内,如果该Activity的When Condition条件成立还成立,仍会被执行,直到When Condition条件不成立
5.如果控制不好Activity的When Condition,与CAG的Until condition,可能会出现一个死循环
例:
bool 标记A = true; bool 标记B = true; int 标记I = 0; bool 标记CAG = false; //是否退出CAG |
||
CAG |
规则 |
this.标记CAG == True |
结点代码 |
无 |
|
A |
规则 |
private void A_规则(object sender, ConditionalEventArgs e) { e.Result = 标记A;} |
结点代码 |
private void A_ExecuteCode(object sender, EventArgs e) { Console.WriteLine("标记A对应的Activity"); 标记A = false; //可以去掉此处再看一下效果 } |
|
B |
规则 |
private void B_规则(object sender, ConditionalEventArgs e) { e.Result = 标记B;} |
结点代码 |
private void B_ExecuteCode(object sender, EventArgs e) { Console.WriteLine("标记B对应的Activity"); // 标记B = false; //可以打开此处再看一下效果 } |
|
I |
规则 |
this.标记I <= 10 |
结点代码 |
private void I_ExecuteCode(object sender, EventArgs e) { 标记I = 标记I + 1; Console.WriteLine("标记I:" + 标记I.ToString()); } |
|
N |
规则 |
无 |
结点代码 |
private void N_ExecuteCode(object sender, EventArgs e) {Console.WriteLine("没有绑定规则的Activity只运行一次");} |
|
CAG_ manager |
规则 |
1 == 1 |
结点代码 |
private void CAG_manager_ExecuteCode(object sender, EventArgs e) { Console.WriteLine("------------------"); if (标记I == 10) { 标记CAG = true;} } |
转载于:https://www.cnblogs.com/foundation/archive/2006/10/12/527817.html
ConditionedActivityGroup相关推荐
- 【翻译】WF从入门到精通(第十一章):并行活动
上一篇:[翻译]WF从入门到精通(第十章):事件活动 学习完本章,你将掌握: 1.理解在工作流环境中Parallel活动是怎样执行的,并且懂得如何使用它们 2.并行执行路径中的同步数据 ...
- 《博客园精华集》Sharepoint+MOSS分册第2轮筛选结果文章列表
<博客园精华集>Sharepoint+MOSS分册第2轮筛选结果文章列表 由我筛选完成,MOSS部分一共68篇,Sharepoint部分一共213篇 Sharepoint相对来说学习和使用 ...
- 《博客园精华集--Sharepoint分册》第三轮结果
写在前面: Sharepoint接触的人相对比较少,筛选下来感觉精华文章不多.对于本分册我准备采用入门.使用.开发.进阶的组织方式,当然如果大家认为不够精华有违精华集的宗旨的话,也可以将本分册拿 ...
- 什么是Activity 和 Activity分类
什么是Activity: 现在提供的Activity大约有28种,分成8大类.Activity 是workflow一个已经编译的模块,是一个可执行的.可重用和可以组合的单元.基础的Activi ...
- Activity容器控件
IfElseActivity 1.IfElseActivity有两个IfElseBranch子控件,分别作为IfElse的两个分支容器,系统自动添加, 2.其中左边(为真件条)的IfElseBranc ...
- Microsoft Windows Workflow Foundation 入门:开发人员演练
有关向 Windows 平台添加工作流支持的初步知识 Microsoft Windows Workflow Foundation (WWF) 是一个可扩展框架,用于在 Windows 平台上开发工作流 ...
- Workflow之Activity
--SequenceWorkflowActivity 活动是Windows Worklow的基本组成块,准确的说,顺序工作流本身就是一个活动-SequentialWorkflowActivity.Se ...
- Windows Workflow Foundation(1)- Windows Workflow Foundation 概述
Windows Workflow Foundation(第一章)- Windows Workflow Foundation 概述 工作流概述 活动(Activity)是工作流的基本单元,用于描述实际进 ...
- Windows workflow foundation入门
Microsoft Windows Workflow Foundation (WWF) 是一个可扩展框架,用于在 Windows 平台上开发工作流解决方案.作为即将问世的 Microsoft WinF ...
最新文章
- 跨链Cosmos(5)ABCI 接口
- 配置IntelliJ IDEA
- 前端学习(632):转义字符
- 滚动插件jQuery Marquee
- 眨眼快奔四了,大家的存款都有多少啊?
- 连续汗蒸一星期有什么好处?
- PAT 乙级 1019. 数字黑洞 (20) Java版
- CentOS安装锐捷认证客户端
- 车型代号对照表_车型与VIN代号对照表
- 浏览器transform介绍
- Ceph 分布式存储架构解析与工作原理
- linux自动登录drcom,Ubuntu用drcom客户端登陆
- 论OSPF中ASBR和ABR
- (八)苏世民:我的经验和教训:决策(567)
- 2017ACM-ICPC亚洲区域赛(西安站)
- 【Linux】电子词典
- 【阅读笔记】《精力管理》吉姆洛尔 托尼施瓦兹
- EasyAR_SDK在unity制作ar视频黑屏,只有声音问题
- 虚拟货币盘点:微币,Q币,苹果平台,Facebook 的F币,Google会推G币么?
- 命令行窗口快速复制粘贴的方法
热门文章
- 密码认证协议PAT怎么配置?
- Serverless 架构模式及演进
- 阿里云性能测试服务 PTS 新面貌 - 压测协议、施压能力全新升级
- 演进实录|不同阶段的企业如何搭建监控体系?
- java中的locksupport_详解Java多线程编程中LockSupport
- 实验Matlab数值运算,MATLAB数值实验一(数据的插值运算及其应用完整版
- 开始位置 环状图_消防泵房内设备、管网、阀门的设置及系统图
- python代码在哪里输入-请问一下这个python代码到底是哪里出了问题?
- 如何维护关键字_SEO人如何制定工作计划?【大站】
- iframe的src动态修改并刷新_微服务中配置中心Config+消息总线Bus,实现分布式自动刷新配置