今天开始,我打算开始学习WWF,从网上搜索到了部分相关资料,也找到了一些文档和实验。但是,资料以英文的占多数,所以,在学习起来似乎比较吃力,不过相信我能坚持下来,顺便提高点英语阅读能力,不过本人英文水平实在是差,解释的不到位或错误的地方请大家谅解(千万别笑话我,哈哈)。毕竟我也是从空白开始学习WWF,让我们一起进步。 首先,我们需要安装WinFX(下载)和Visual Studio 2005 extensions for .NET Framework 3.0 (Windows Workflow Foundation)。这是我们必备的开发组件。 这些例子和教程是从微软的labs上下载到的,分为10个部分。先来学最基础的第一部分先 :) 第一部分的目的 这个试验的目的是介绍Windows Workflow Foundation的工作流概念的关键点 完成了这个试验以后,我们可以学习到: · 使用Visual Studio 2005 为WWF设计顺序工作流 · 配置和使用Visual Studio 2005调试器调试你的工作流 · 让工作流接受参数 · 通过接收事件触发一个新的工作流实例 · 定义条件 · 为If/Else, Delay, Listen, and Code配置基本的活动(activities不知道怎么翻译好) · 给工作流为接收到的事件定制活动 工作流是在一个活动图中进行定义的,它可能是一个人为操作或一个系统进程。一个活动在工作流中是一个步骤,其体现为一个可执行单元,并且是可重用的,可整合的。工作流在设计好后被编译成.net程序集,它被工作流运行时和通用语言运行时(CLR)所执行。
一.创建一个Hello World工作流 在这次练习里,我们将通过VS2005工作流设计器设计一个非常简单的“Hello World”工作流。这个Hello World工作流将通过很简单的代码实现一个顺序工作流,它将在我们的命令行中输出“Hello, World!”。我们将了解工作流的定义和其代码。最后,我们将学习怎样通过VS2005在我们的机器上执行、调试我们的工作流。 打开VS 2005,新建项目,选择“顺序工作流控制台应用程序”,修改项目名称为:HelloWorldWorkflow.
1. 点击确定我们将生成一个新的工作流项目。 2. 这个项目会为我们自动生成一个工作流模版Workflow1。在这里我们是不需要这个模版的,我们只是做一个非常简单的例子,所以我们删除这个Workflow1.cs文件。 3. 右键单击项目选择添加新项 4. 选择“顺序工作流(具有单独的代码)”,点确定添加。这里将添加两个文件Workflow1.xoml和Workflow1.xoml.cs,Workflow1.xoml包含了描述工作流类型的XML语言,而其CS后缀的的文件则包含这个工作流内的动作执行代码。 5. 下面我们要做的就是添加代码了。双击Workflow1.xoml文件来打开VS 工作流设计器视图。 6. 我们从工具箱里可以看到我们可以添加的各种活动。 7. 我们从工具箱中拖拽“Code”这个活动到我们的工作流当中。 8. 注意,这个时候在我们拖拽进来的“Code”这个活动的右上角有一个红色的叹号,点击下拉的小三角我们可以看到显示这个叹号的呀,是因为属性ExecuteCode还没有被设置。
9. 那么下一步很明白了,我们需要设置ExecuteCode,点击这个提示,我们会发下在属性窗口的ExecuteCode会显示高亮,在其内输入codeActivity1_CodeHandler并双击,会在后台代码Workflow1.xoml.cs中生成codeActivity1_CodeHandler方法 10. 可以看到,这个类继承自 SequentialWorkflowActivity 基类. 我们要在方法中输入: Console.WriteLine("Hello, World!"); 全部代码如下:
11. 按Ctrl+F5运行程序,如果出现: 12. 是不是太简单了?至少,我们第一次的工作流编写完成了。 13. 等等,别急,还有个好玩的,那就是WWF的调试功能。我们在以前调试的时候,是要在代码中设置断点的,现在,你可以试一下调试WWF。 14. 打开工作流的设计视图Workflow1.xoml。 15. 选中我们刚才拖拽过来的codeActivity1,点右键,选断点—插入断点(或者选中后直接点F9),看到了什么? 6. 现在我们再按F5,在执行到这里的时候就会停止,可以进行调试了。 7. 点F11单步执行将进入我们的codeActivity1_CodeHandler事件,是不是很方便?
|
和我一起学Windows Workflow Foundation(1)
最新推荐文章于 2015-10-27 16:36:03 发布
和我一起学Windows Workflow Foundation(1) 创建和调试一个WF实例
2007年04月12日 10:58