共用方式為


Windows Workflow 概觀

工作流程是一組稱為「活動」的項目單元,會以模型的形式儲存並描述真實世界的程序。 工作流程能夠描述執行的順序,以及短期工作和長期工作之間的相依關係。 這個工作會從頭到尾經過整個模型,而活動可能會由人員或系統功能執行。

工作流程執行階段引擎

每個執行中的工作流程執行個體是由同處理序執行階段引擎建立與維護的,主機處理序會透過以下其中一種方式與該引擎互動:

這裡每個類別都會包含核心活動執行階段,此執行階段是以負責活動執行的 ActivityInstance 來表示。 在並行執行的應用程式網域內可能有幾個 ActivityInstance 物件。

前三個主機互動物件是從稱為工作流程程式的活動樹狀結構中所建立。 使用這些型別或包含的 ActivityInstance 自訂主機,工作流程即可在任何 Windows 處理序內部執行,包括主控台應用程式、表單架構應用程式、Windows 服務、ASP.NET 網站和 Windows Communication Foundation (WCF) 服務。

Workflow components in the host process
主機處理序中的工作流程元件

工作流程元件之間的互動

下圖顯示工作流程元件之間的互動方式。

Diagram that shows how workflow components interact.

在上圖中,Invoke 類別的 WorkflowInvoker 方法是用於叫用幾個工作流程執行個體。 WorkflowInvoker 是用於不需要從主機管理的輕量工作流程,需要從主機 (例如 Bookmark 繼續) 管理的工作流程則必須改用 Run 來執行。 不一定要先等候一個工作流程完成,才能叫用另一個工作流程,執行階段引擎支援同時執行多個工作流程執行個體。 叫用的工作流程如下:

另請參閱