WWF3入门<第一篇>
工作流是什么东西?暂时还不是很弄得清除。
工作流是用来解决什么问题的?暂时只是形成了一个很模糊的概念,还没办法用语言描述出来。
一、入门范例
以VS2008为例,先来创建一个WWF程序。

在工具箱中,拖一个Code到"活动"中

打开codeActivity1的属性面板,在ExecuteCode里双击,然后进入,键入如下代码:
namespace WorkflowConsoleApplication1
{
public sealed partial class Workflow1 : SequentialWorkflowActivity
{
public Workflow1()
{
InitializeComponent();
} private void CodeExecute(object sender, EventArgs e)
{
Console.WriteLine("Hello World -- 工作流启动了!");
Console.ReadKey();
}
}
}
启动,项目,输出如下:

二、创建应用程序项目
WWF工作流都是控制台程序,为了更好地给大家进行演示,这里创建一个Windows应用程序作为它的宿主的载体。
新建一个Windows Form应用程序,引用如下控件。

和之前一样,在Winform程序中,创建一个工作流项目,结构如下

在Winform程序的代码(Winform引用工作流项目):
public partial class Form1 : Form
{
//定义工作流运行时Runtime容器
private WorkflowRuntime workflowRuntime;
//定义工作流实例
private WorkflowInstance workflowInstance; public Form1()
{
InitializeComponent(); //启动工作流运行时的容器
workflowRuntime = new WorkflowRuntime();
workflowRuntime.StartRuntime();
} private void button1_Click(object sender, EventArgs e)
{
//指定需要引用的工作流名称
Type type = typeof(WorkflowConsoleApplication1.Workflow1); //在工作流运行时Runtime容器中注册一个工作流实例
workflowInstance = workflowRuntime.CreateWorkflow(type); //启动该工作流实例
workflowInstance.Start();
}
}
工作流的代码Console.Write()改为MessageBox.Show();
private void codeActivity1_ExecuteCode(object sender, EventArgs e)
{
MessageBox.Show("Hello World -- 工作流启动了!");
}
点击按钮,输出如下:

WWF3入门<第一篇>的更多相关文章
- ElasticSearch入门 第一篇:Windows下安装ElasticSearch
这是ElasticSearch 2.4 版本系列的第一篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...
- Flink入门-第一篇:Flink基础概念以及竞品对比
Flink入门-第一篇:Flink基础概念以及竞品对比 Flink介绍 截止2021年10月Flink最新的稳定版本已经发展到1.14.0 Flink起源于一个名为Stratosphere的研究项目主 ...
- Zookeeper 入门第一篇
转载原文地址: ZooKeeper学习总结 第一篇:ZooKeeper快速入门 ZooKeeper学习总结 第二篇:ZooKeeper深入探讨 ZooKeeper学习第一期---Zookeeper简单 ...
- JavaMail入门第一篇 邮件简介及API概述
现如今,电子邮件在我们的生活当中扮演着越来越重要的角色,我们每个人几乎都会与其打交道(至少时不时我们都会接收到莫名其妙的垃圾邮件),在工作中,使用邮件进行交流沟通,可以使我们的工作有迹可循,也显的较为 ...
- flask入门第一篇
一. Python 现阶段三大主流Web框架 Django Tornado Flask 对比 1.Django 主要特点是大而全,集成了很多组件,例如: Models Admin Form 等等, 不 ...
- Android JNI入门第一篇——HelloJni
android支持使用NDK开发C程序,关于配置NDK环境问题应该不用再赘述了,这个网上有很多,这里通过一篇实例来讲述简单的JNI开发,大家可以参考这篇文章(Get Your Eclipse-Inte ...
- NLP初试牛刀,NLTK入门第一篇
之前下载过一个PDF,书名是<用python进行自然语言处理>,挺有意思的,加上NLP和机器学习目前大热,想趁着暑假涉猎一下.于是开始了入门NLP之旅. 安装环境:Ubuntu14.04桌 ...
- struts快速入门第一篇 —— struts相关XML配置映射及讲解
我们回忆一下在学习JavaWeb过程中(Jsp + servlet编程)所感受到的Servlet的不足: 1 Servllet很多时,web.xml中的代码会很多.这样一来,维护起来就不方便,不利于团 ...
- AJAX入门第一篇就够了
什么是Ajax Ajax(Asynchronous JavaScript and XML) 异步JavaScript和XML Ajax实际上是下面这几种技术的融合: (1)XHTML和CSS的基于标准 ...
随机推荐
- tomcat服务器配置多个项目
修改tomcat的server.xml文件中的Engine标签下的Host标签如下: <Host name="www.a.com" appBase="webapps ...
- PLSQL_性能优化系列03_Oracle Parallel并发处理
2014-09-25 Created By BaoXinjian
- 51nod 1120 机器人走方格 V3 卡特兰数 lucas定理
N * N的方格,从左上到右下画一条线.一个机器人从左上走到右下,只能向右或向下走.并要求只能在这条线的上面或下面走,不能穿越这条线,有多少种不同的走法?由于方法数量可能很大,只需要输出Mod 100 ...
- @Autowired失效
今天发现了一个使用@Autowired但是注入失败的问题. 后来发现原来是一个Validator中有@Autowired , 并试图注入一个service , 但是这个service始终是null , ...
- 金蝶BOS
1, 金蝶BOS 金蝶BOS是一个开放的集成与应用平台,是金蝶企业管理软件解决方案.合作伙伴解决方案以及客户定制应用的技术平台.能够为企业灵活而迅速的设计.构建.实施和执行一套随需应变的企业管理软件系 ...
- JAVA 继承 extends
/* 继承 1.提高了代码的复用性,简化了代码 2.让类与类之间产生了继承关系,才有了后面的多态的特性的存在 注意:千万不要为了获取其它类的功能简化代码,而建立继承关系, 必须要类与类之间存在继承关系 ...
- 如何限制textarea文本框的输入字数
代码实例如下: <!doctype html><html><head><meta charset="UTF-8"><title ...
- mysql中游标的使用
BEGIN #遍历占领野地表还原军队 # and cityid=cityid) ,) ;#occupyWild表的TroopsId ,) ;#occupyWild表的CityId ,) ;#occup ...
- c#图片上绘制半透明矩形
p.CreateGraphics().FillRectangle( ,Color.LightGreen)), iLeft, iTop, iRight - iLeft, iBottom - iTop); ...
- ASP.NET优化
源地址:http://www.cnblogs.com/wangjingblogs/archive/2013/02/27/2934706.html http://jingyan.baidu.com/ar ...