创建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]运行程,会看到如下结果

posted on 2015-03-19 14:26  草色年华  阅读(1165)  评论(0编辑  收藏  举报