Windows工作流基类库(WF)探密
五、建立一个工作流应用程序
在建立一个工作流之前,我们需要建立一个主应用程序,工作流将运行在这个程序中。为了完成这个工作,首先启动Visual Studio 2005,单击File菜单,选择New > Project。在新建工程对话框中选择相应的工程类型(如图3的工作流类型)和开发语言。

图3 新建工程模板。通过VS2005的工作流扩展建立指定的基于工作流的应用程序库。
在这个模板页中,选择序列工作流控制台应用程序来建立一个基于控制台的工作流应用。将工程命名为SequentialWorkflowConsole。在工程被建立后,我们将看到一个新的,空的序列工作流程序,如图4所示。
图4 新的工作流。当我们建立一个新的工作流应用程序时,当将包括一个序列工作流图。
下面到Visual Studio的工具面板,找到Windows工作流页,这个控件页中包含了一些预定义的动作图(如图5所示)。我们可以将它们拖到刚才建立的工作流图中。
Shared WaitHandle As New AutoResetEvent(False) Shared Sub Main() Using workflowRuntime As New WorkflowRuntime() AddHandler workflowRuntime.WorkflowCompleted, AddressOf OnWorkflowCompleted AddHandler workflowRuntime.WorkflowTerminated, AddressOf OnWorkflowTerminated Dim workflowInstance As WorkflowInstance workflowRuntime.CreateWorkflow(GetType(Workflow1)) workflowInstance.Start() WaitHandle.WaitOne() Console.WriteLine("Press any key to continue...") Console.ReadLine() End Using End Sub
要注意的是这两个文件的最后两行会在调用WaitHandle.WaitOne()之后执行。这些代码行显示了一个控制台消息,并且等待控制台输入。将这两行加到我们的控制流应用程序中,并使我们的控制台工作流程序始终处于运行状态(直接输入一个字符串,并按回车为止)。