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相关推荐

  1. 【翻译】WF从入门到精通(第十一章):并行活动

    上一篇:[翻译]WF从入门到精通(第十章):事件活动 学习完本章,你将掌握:     1.理解在工作流环境中Parallel活动是怎样执行的,并且懂得如何使用它们     2.并行执行路径中的同步数据 ...

  2. 《博客园精华集》Sharepoint+MOSS分册第2轮筛选结果文章列表

    <博客园精华集>Sharepoint+MOSS分册第2轮筛选结果文章列表 由我筛选完成,MOSS部分一共68篇,Sharepoint部分一共213篇 Sharepoint相对来说学习和使用 ...

  3. 《博客园精华集--Sharepoint分册》第三轮结果

    写在前面:    Sharepoint接触的人相对比较少,筛选下来感觉精华文章不多.对于本分册我准备采用入门.使用.开发.进阶的组织方式,当然如果大家认为不够精华有违精华集的宗旨的话,也可以将本分册拿 ...

  4. 什么是Activity 和 Activity分类

    什么是Activity:     现在提供的Activity大约有28种,分成8大类.Activity 是workflow一个已经编译的模块,是一个可执行的.可重用和可以组合的单元.基础的Activi ...

  5. Activity容器控件

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

  6. Microsoft Windows Workflow Foundation 入门:开发人员演练

    有关向 Windows 平台添加工作流支持的初步知识 Microsoft Windows Workflow Foundation (WWF) 是一个可扩展框架,用于在 Windows 平台上开发工作流 ...

  7. Workflow之Activity

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

  8. Windows Workflow Foundation(1)- Windows Workflow Foundation 概述

    Windows Workflow Foundation(第一章)- Windows Workflow Foundation 概述 工作流概述 活动(Activity)是工作流的基本单元,用于描述实际进 ...

  9. Windows workflow foundation入门

    Microsoft Windows Workflow Foundation (WWF) 是一个可扩展框架,用于在 Windows 平台上开发工作流解决方案.作为即将问世的 Microsoft WinF ...

最新文章

  1. 跨链Cosmos(5)ABCI 接口
  2. 配置IntelliJ IDEA
  3. 前端学习(632):转义字符
  4. 滚动插件jQuery Marquee
  5. 眨眼快奔四了,大家的存款都有多少啊?
  6. 连续汗蒸一星期有什么好处?
  7. PAT 乙级 1019. 数字黑洞 (20) Java版
  8. CentOS安装锐捷认证客户端
  9. 车型代号对照表_车型与VIN代号对照表
  10. 浏览器transform介绍
  11. Ceph 分布式存储架构解析与工作原理
  12. linux自动登录drcom,Ubuntu用drcom客户端登陆
  13. 论OSPF中ASBR和ABR
  14. (八)苏世民:我的经验和教训:决策(567)
  15. 2017ACM-ICPC亚洲区域赛(西安站)
  16. 【Linux】电子词典
  17. 【阅读笔记】《精力管理》吉姆洛尔 托尼施瓦兹
  18. EasyAR_SDK在unity制作ar视频黑屏,只有声音问题
  19. 虚拟货币盘点:微币,Q币,苹果平台,Facebook 的F币,Google会推G币么?
  20. 命令行窗口快速复制粘贴的方法

热门文章

  1. 密码认证协议PAT怎么配置?
  2. Serverless 架构模式及演进
  3. 阿里云性能测试服务 PTS 新面貌 - 压测协议、施压能力全新升级
  4. 演进实录|不同阶段的企业如何搭建监控体系?
  5. java中的locksupport_详解Java多线程编程中LockSupport
  6. 实验Matlab数值运算,MATLAB数值实验一(数据的插值运算及其应用完整版
  7. 开始位置 环状图_消防泵房内设备、管网、阀门的设置及系统图
  8. python代码在哪里输入-请问一下这个python代码到底是哪里出了问题?
  9. 如何维护关键字_SEO人如何制定工作计划?【大站】
  10. iframe的src动态修改并刷新_微服务中配置中心Config+消息总线Bus,实现分布式自动刷新配置