WorkFlow扩展篇Step.1—集合分组下的活动使用[上]-WF4.0
开篇
上篇我们主要是讲述了《WorkFlow设计篇Step.6—InvokeMethod调用对象或类型方法-WF4.0》如何使用InvokeMethod完成工作流的设计与开发,本篇我们将要开始讲述
扩展篇的内容,主要是讲述如何使用集合Collection在工作流中的用法。
摘要
本篇我们是扩展篇的第一篇,本篇主要是讲述Collection的用法,一般来说我们对集合的操作,无非就是以下几种,增、删、查这几种,所以WF默认提供了一下四种
集合活动:
具体的作用,我想大家从字面上也能看出来个八九不离十,下面我们就具体的使用细节来说明下吧。
最后,我们来整理个流程,把这四类集合的活动,全部集成到一个流程中看看吧。
大纲
1、开篇
2、摘要
3、大纲
4、集合活动的用法
集合的用法
1、AddToCollection<T>活动
1、新建一个控制台项目:
2、将相应的节点添加到设计器中:
3、在顺序控制流中拖拽一个AddToCollection活动,选中该活动并查看相关属性,按F4 如下:
4、我们在sequence内定义一个变量,是集合类型的,比如Ilist,我们设置AddToCollection活动的相关属性:
a、添加变量:
并且给MyCollection必须要初始化,否则会报错:
b、设置AddToCollection活动的属性如下:
5、我们添加个foreach<T>活动。循环输出集合中的内容:
6、F5,运行查看结果吧,看看是否结果与我们的预期相符:
上面我们就完成了AddToCollection<T>活动的说明,其他的几个活动的用法也相仿。
下面我们就来看看ClearCollection<T>的用法吧,该活动的主要作用是将集合内的Item清空。
2、ClearCollection<T>活动
关于Clear的具体作用就是清空具体的目标集合内的所有项,具体的用法,我们下面来一一道来:
1、新建一个活动文件,并拖拽一个sequence与AddToCollection<T>,并添加一个ClearCollection<T>活动:
2、设置ClearCollection<T>活动的相关属性如下:
3、接着我们来添加几个WriteLine活动,来标识WF流程的开始和结束,并记录每个操作的具体内容如下:
上面的内容,有点多,所以我拆开截图了,不过上面的几幅图拼一起就是完整的了,还望大家如果有看不明白的请看代码吧:
4、F5,运行后,查看具体的运行结果吧,看看是不是我们想要的,看看在执行完毕ClearCollection活动后,集合还会不会输出结果呢?
5、为了更清晰的演示,我们在上面多加几个AddToCollection<T>活动,向集合内部多加一些Item吧:
6、继续F5,查看运行效果吧:
7、大伙应该发现了,其实我们上面的AddToCollection并不是特别的方便使用,我们在实际的场景中可能是使用While循环来添加节点吧?
或者是其他的循环方式,下面我们通过循环来向集合中添加元素。
a、定义MyFlag变量,Int32类型,定义在sequence上,用户控制循环的次数
b、删除原来的AddToCollection活动,添加While活动如下:
c、F5运行,查看运行输出的效果,看看和我们想的是否一样:
源码下载
更多交流
如果您在使用AgileEAS.NET开发平台中有什么问题,请使用如下几种联系方式或者沟通方式。
1、电话-邮箱方式:
何戈洲:hegezhou_hot@163.com 手机:18691480181 博客:http://www.cnblogs.com/hegezhou_hot/
2、QQ交流:
308961614 -网名:H.O.T
作者:IT行者-何戈洲
出处:http://www.cnblogs.com/hegezhou_hot/
2007年大学毕业后便投入到计算机行业中,先后涉足(电信、电子商务、教育、医疗、工程建筑、项目管理、房产)等行业,目前有比较丰富的技术及行业经验,技术方面涉及(Java、Go、.NET、Python、设计模式、系统架构、PM管理流程、软件工程、敏捷开发、SOA、云计算、大数据、区块链、WF、SAAS等领域),结合业务可提供(EIP、ERP、HIS、B2B、B2C、B2B2C、CRM、OA、O2O等)业务及技术解决方案,随着时间的推移,目前已逐步转向管理方面,欢迎同行一起交流学习,个人平时爱好体育运动、音乐、旅游等,向往丰富多彩的生活旅程。如有问题或建议,请多多赐教!
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过hegezhou_hot@163.com 联系我,非常感谢。
其他联系方式:
电话:13716055594
联系人:何戈洲
微信联系我: