您的位置:首页 > 其它

我的Windows Workflow Foundation 之旅---(1)Hello,Workflow!

2008-11-01 12:48 357 查看
Windows Workflow Foundation 有时也被称为Windows WF,它是由微软开发的,为开发者开发基于工作流或基于流程的软件解决方案提供单一平台。Windows Workflow Foundation建筑在.NET之上,是.NET Framework3.0的主要组成部分。

接下来动手开发我们第一个工作流。

首先,启动Visual Studio 2008。第一步,创建一个“顺序工作流控制台应用程序”项目,如下图



创建新项目后,开发环境如下图



解决方案中的Workflow.cs文件是工作流本身,而Program.cs文件是启动工作流程序的代码

1.工作流

在解决方案中右击Workflow1.cs,然后选择“查看代码”。

添加姓名和消息属性,如图



接下来回到设计视图,从工具箱中找到“Code”控件,拖动到设计界面中,然后将它的“Name”属性更改为“createMessageActivity”,此时会发现Code Activity右上方会出现一个红色惊叹号,如下图:



这个惊叹号说明没有设置ExcuteCode属性,我们需要创建这个事件,右击它的属性,找到事件,如下图:



双击这个事件,写入一下代码

private void createMessageActivity_ExecuteCode(object sender, EventArgs e)

{

message = String.Format("Hello {0} !", name);

}

2.控制台应用程序

在“解决方案资源管理器”中打开Program.cs文件。增加一个名为message的string类型变量,修改WorkflowCompleted事件用来接受工作流发送的消息。

//接收问候消息

string message = string.Empty;

workflowRuntime.WorkflowCompleted += delegate(object sender, WorkflowCompletedEventArgs e) {

message = e.OutputParameters["Message"].ToString();

waitHandle.Set();

};

接下来,将用户的名字传入工作流中,可以使用Dictionary<string,object>集合。

Dictionary<string, object> InParms = new Dictionary<string, object>();

InParms.Add("姓名", "无忧");

WorkflowInstance instance = workflowRuntime.CreateWorkflow(typeof(Demo1.Workflow1), InParms);

最后在控制台输出消息

Console.WriteLine(message);

结果如下图:



[源代码下载]

[下一节]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: