WF4.0 基础篇 (一) 开始使用WF——下篇

创建WF4.0项目

1.打开VS2010 ,[File] -> [New] -> [Project]

2.在出现的[New Project]对话框的[Installed Templates]树上选[Workflow],在出现的模板列表框中选[Workflow Console Application]项

在[Name]框中输入[helloWorkflow],点击[OK]进入WF4.0项目的设计界面

创建一个"hello wxwinter"屏幕的输出的工作流

按[F5]运行程,会看到如下结果

程序结构说明

本例子包括两部分,用于描述流程结构的一个XAML文件与调用流程的宿主程序

XAML流程结构描述文件

WF4.0 的流程结构描述文件是一个XML格式的文件,其格式如下

(关于WF4.0的XAML文件格式,会在以后的文章中做具体介绍,在这里做一个基本说明)


<Activity

x:Class="helloWorkflow.Workflow1"

....

>

<WriteLine

Text="hello wxwinter "

....

/>

</Activity>

WF4.0的流程是由一组[活动]组成的,当流程运行时,流程内的[活动]按一定的规则依次执行

其中<Activity> </Activity> 是这个流程的根[活动]

<WriteLine /> 是WF4.0 的一个自带的一个[活动],其功能就是在屏幕打印[Text属性]的内容

x:Class="helloWorkflow.Workflow1" 则是将XOML文件编译成NET类时所对应的类名

宿主程序

在使用[Workflow Console Application]模板创建时,会自动创建一个用于测试流程的控制台宿主程序,内容如下


class Program

{

static void Main(string[] args)

{

WorkflowInvoker.Invoke(new Workflow1());

}

}

其中,[ WorkflowInvoker]是一个用于调用工作流的功能类,可以使用该类的[Invoke 静态方法]调用流程.在本例中[Invoke(new Workflow1())]所使用的类就是XOML文件中 x:Class="helloWorkflow.Workflow1" 所定义的类名

代码方式创建WF4.0工作流


class Program

{

static void Main(string[] args)

{

WorkflowInvoker.Invoke(codeCreateWorkflow());

}

// 代码方式创建WF4.0工作流

static Activity codeCreateWorkflow()

{

WriteLine writeLineActivity = new WriteLine() { Text = "hello wxwinter" };

Sequence wxwinterWorkflow = new Sequence();

wxwinterWorkflow.Activities.Add(writeLineActivity);

return wxwinterWorkflow;

}

}

按[F5]运行程,会看到如下结果

时间: 2024-10-01 07:32:53

WF4.0 基础篇 (一) 开始使用WF——下篇的相关文章

WF4.0 基础篇 (一)开始使用WF——上篇

最近公司要重新上线一套新的CRM系统,要重整老系统里的业务流模块,团队讨论已微软的workflow作为技术基础.本人之前没有涉及过相关的知识,目前项目还没开始,前期来系统的的学习和了解下WF为后期开发打下些技术基础.该篇为开题片,做一些简单那的介绍和入门. 从WinFX到NET3.x再到NET4.0 ,WPF,WCF,WF 始终是放在一起的,WPF(silverlight)用于程序UI的展现,WCF用于程序通信,WF用于程序的逻辑控制,这种思想在微软提出WinFX到现在的NET3.x再到NET4

在Eclipse中使用JUnit4进行单元測试(0基础篇)

本文绝大部分内容引自这篇文章: http://www.devx.com/Java/Article/31983/0/page/1 我们在编写大型程序的时候,须要写成千上万个方法或函数,这些函数的功能可能非常强大,但我们在程序中仅仅用到该函数的一小部分功能,而且经过调试能够确定,这一小部分功能是正确的.可是,我们同一时候应该确保每个函数都全然正确,由于假设我们今后假设对程序进行扩展,用到了某个函数的其它功能,而这个功能有bug的话,那绝对是一件非常郁闷的事情.所以说,每编写完一个函数之后,都应该对这

25个增强iOS应用程序性能的提示和技巧(0基础篇)

在开发iOS应用程序时,让程序具有良好的性能是非常关键的.这也是用户所期望的,假设你的程序运行迟钝或缓慢.会招致用户的差评.然而由于iOS设备的局限性,有时候要想获得良好的性能.是非常困难的.在开发过程中,有很多事项须要记住.而且关于性能影响非常easy就忘记. 本文收集了25个关于能够提升程序性能的提示和技巧,把性能优化技巧分为3个不同的等级:0基础.中级和高级 0基础 在开发过程中,以下这些0基础技巧须要时刻注意: 1.使用ARC进行内存管理 2.在适当的情况下使用reuseIdentifi

kinect2.0 基础篇第一篇 用C#在Visual Studio上编写关闭彩色图像的三色通道的某个通道

网上基于kinect2.0 用C#语言编写的小程序太少了 下面的链接上C#语言的一些基础开发,对于什么都不会的最好手把手敲一遍 http://blog.csdn.net/app_12062011/article/details/52665048 使用kinect2.0  要求环境如下: 系统win8以上 Usb接口3.0 Direct11 以上 1.新建一个WPF应用程序,首先肯定要添加应用  Microsoft.Kinect 2.在WPF 在Grid中 添加一个控件 <Image x:Name

kinect2.0 基础篇第3篇 用C#在Visual Studio上编写把深度图像转换成彩色图像

本示例实现的功能有:有两个Radiobutton控件  选一个,点击启动按钮, 第一个是将深度图像转换成彩色图像 第二个是将深度图像做一些简单处理(例如太暗的调白一点) 涉及到一点遥感图像处理知识,将深度数据值转换为色调和饱和度 遥感图像处理那块不懂,有兴趣的自己可以研究研究,代码的基于kinect1的教程,慢慢尝试出来的,虽然功能实现了,但是原理还不是很懂 <Window x:Class="EnhancedDepthWPF.MainWindow" xmlns="htt

mongo3.0基础篇

1:安装 http://note.youdao.com/share/?id=33cc240a3ea3d488def99651ca89b6fa&type=note 2:创建用户 http://note.youdao.com/share/?id=2128db3e982a0db0a0543cee36da708a&type=note 3:CRUD(C) http://note.youdao.com/share/?id=59459f31f18b81df577a2060e18c79ae&typ

linux系统命令解析(0基础篇)

经常使用命令 ctrl+W+T    当进入gvim文档编辑界面后,假设是C文件,能够列出当前文件里的全部函数. Shift+*    当进入gvim文档编辑页面,能够搜索当前keyword. echo $?    查看上一个命令的返回值(脚本的返回值).

Git学习0基础篇(下)

server上的 Git - 协议 Git能够使用四种基本的协议传输资料:本地协议(Local).HTTP 协议.SSH(Secure Shell) 协议以及 Git 协议.眼下使用最普及的是 SSH 协议和 HTTP 协议. 本地协议 本地协议的长处是简单,缺点是不方便从多个位置訪问. 克隆一个本地版本号库,能够运行例如以下命令: $ git clone /opt/git/project.git 或 $ git clone file:///opt/git/project.git HTTP 协议

ArcGIS Runtime for Android开发教程V2.0(3)基础篇---Hello World Map

原文地址: ArcGIS Runtime for Android开发教程V2.0(3)基础篇---Hello World Map - ArcGIS_Mobile的专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/arcgis_mobile/article/details/8124005 通过上面章节,我们已经了解如何配置一个ArcGIS Runtime for Android开发环境,下面我们将介绍如何使用Eclipse创建一个ArcGIS移动项目Hello W