前言:

到现在我们可以看到,WF4包含一个.xmal 文件的设计器和一个调用活动的runtime。当你创建自己的工作流的时候,你是同时也创建了一个活动,

因为活动是一个继承System.Activities.Activity的类。

活动可以实现业务程序,一些活动实现业务程序通过调用其他的活动,例如SayHello活动不能实现写text到console上,而是通过WriteLine活动去做这个工作。

为了实现这个我们将继承一个不同的基类System.Activities.CodeActivity。

demo制作:

1. 应用wf(二)的solution。

2. 创建SayHelloCode活动,并且写text到console通过Console.WriteLine

右击HelloWorkflow项目,选择添加新建项目,选择Code Activity 命名为SayHelloInCode;

在SayHelloInCode类中删掉Text属性以及相关,只保留一个空的Execute的空方法;

CodeActivity是一个抽象的类,所以继承CodeActivity的时候必须实现Execute这个方法,Execute这个方法里面讲执行你的活动工作;

这里我们应该重写Execute如下图:

3更新Proram.cs以调用 SayHelloInCode

如图:

4重新编译执行,会成功并显示如下图:

那么demo3就搞完了。

为什么我需要创建一个Code activity?

通过在代码中写业务逻辑,这样你的业务逻辑能够被组合到更大的业务程序中在运用Workflow runtime的时候;这将有利于你的线程模型,数据处理等方面,程序的

扩展性得到了极大的提高。(和面demo将会讲到)。

wf(三)的更多相关文章

  1. 内存分配---FF、BF、WF三种算法

    动态分区分配是根据进程的实际需要,动态的为之分配内存空间.而在实现可变分区分配时,将涉及到分区分配中 所用的数据结构.分区分配算法和分区的分配与内存回收的过程. 分区分配中的数据结构:(1)描述空闲块 ...

  2. CCFLOW5 SDK 模式 开发环境配置

    在群里和论坛里问了N次都没有人回答,最终在QQ好友[冥(276669806) ]的帮助下成功配置了SDK开发环境.现将具体配置步骤分享给大家.1.打开VS2010 新建一个网站项目2.将CCFlow\ ...

  3. WF学习笔记(三)

    Collection 集合 -AddtoCollection<T> 添加项到集合 :[AddtoCollection]可以将一个项添加到[Collection]集合中 ,[Item]属性用 ...

  4. java web学习总结(三十一) -------------------EL表达式

    一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...

  5. java web学习总结(三十) -------------------JSTL表达式

    一.JSTL标签库介绍 JSTL标签库的使用是为弥补html标签的不足,规范自定义标签的使用而诞生的.使用JSLT标签的目的就是不希望在jsp页面中出现java逻辑代码 二.JSTL标签库的分类 核心 ...

  6. java web学习总结(三) -------------------TOMCAT使用帮助(二)

    一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命令的用法如下:

  7. JavaWeb学习总结(三)——Tomcat服务器学习和使用(二) 包含https 非对称秘钥 NB

    JavaWeb学习总结(三)--Tomcat服务器学习和使用(二) 一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命 ...

  8. Python之路【第三篇补充】:Python基础(三)

    参考老师:http://www.cnblogs.com/wupeiqi lambda表达式 学习条件运算时,对于简单的 if else 语句,可以使用三元运算来表示,即: # 普通条件语句 if 1 ...

  9. 三、jQuery--jQuery实践--搜索框制作

    input标签讲解 <input/>作为按钮的type属性:button.submit(后面会有二者对比分析)

随机推荐

  1. AOP 学习

    学习 Spring.Net 的AOP 的时候,在做一个简单的测试例子的时候,配置文件和代码逻辑都是没问题的,但始终报这样一个异常: 无法将类型为“CompositionAopProxy_1e76f37 ...

  2. js 字符串拼接

    正常来说已经使用es6 的 模板了如`` //页面层 layer.open({ type: 1, content:`<div class="child_card"> & ...

  3. 根据backup-my.cnf来生成新的事务日志文件

    使用rpm包安装xtrabackup ## 安装依赖包yum -y install perl perl-devel libaio libaio-devel perl-Time-HiRes perl-D ...

  4. EDI - Biztalk Sample

    1. EDI Control - Scripting Usage:

  5. Android课程---首学开发

    新建一个Activity2类: package com.hanqi.test; import android.app.Activity; import android.os.Bundle; impor ...

  6. the major advances since the birth of the computer

    COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION • The family concept: ...

  7. ant copy file

    <project name="selftask" default="docopy" basedir="."> <descr ...

  8. 从清月高中物理动学课件制作工具说【FarseerPhysics引擎之WheelJoint】及【PropetryGrid之动态下拉列表】

    最近在写一个简单的小工具,可以用来制作一些简单的运动学课件,这个工具主要是把物理引擎的设置可视化,主要包括利用纹理图片直接创建并设置物体.关节等方面.之前开发时主要使用BOX2D引擎和BOX2D.XN ...

  9. C#编程之委托与事件四(二)【转】

    C#编程之委托与事件(二)       我在上一篇文章(C#编程之委托与事件(一) )中通过示例结合的方法介绍了委托,在本文中,我同样以代码示例的方式来介绍C#里的事件机制. 二.事件   1.了解概 ...

  10. Mac系统安装jdk和maven

    一.安装jdk 1.查看java链接到了哪里: 进入到相应的目录:cd /usr/bin 查看java链接到了哪里: ls -l java lrwxr-xr-x  1 root  wheel  74  ...