.NET Framework 3.0/Windows Workflow Foundation 簡介
Windows Workflow Foundation 是 .NET Framework 3.0 引入的一個新元件。
工作流是指透過對資源、定義的角色以及質量、能量和資訊流的系統化組織,實現可靠可重複的活動模式,從而形成可記錄和學習的工作流程。工作流始終旨在實現某種處理意圖,例如物理轉換、服務提供或資訊處理。
工作流是一組活動。每個活動都是一個類,執行特定操作。在 Windows Workflow Foundation (WWF) 中,它們使用稱為 XAML 的語言進行編碼,該語言專門為此目的而引入。
工作流活動是作者建立的類,其中包含作者編寫的可由工作流呼叫和執行的方法。活動有不同的型別:基本活動和複合活動。基本活動是工作流執行的單個活動,而複合活動由活動組成。除此之外,使用者還可以根據現有活動建立自定義活動。
通常,WWF 由多個活動或單個程式組成,這些程式使用 XAML 程式碼相互關聯。因此,我們需要包含名稱空間 System.Workflow.ComponentModel。
WWF 提供兩種型別的工作流。
- 順序工作流
- 狀態機工作流
WWF 由以下元件組成
|
基本活動庫通常包含一些眾所周知或經常使用的活動,這些活動由工作流執行。此外,使用者還可以將自定義構建的活動新增到工作流中以供使用。這些活動可以是根據現有活動開發的活動,也可以是從頭開始編寫的活動。基本活動庫與 .NET 框架的基類庫 (BCL) 和 Java 類庫非常相似。
Windows Workflow Foundation 的另一個組成部分是執行時引擎。顧名思義,它包含程式執行所需的執行時類和服務。執行時引擎的這些執行時服務執行與提供者相同的作用。
執行時引擎為工作流預設執行提供了一些執行時服務。但如果您想自行新增服務,則可以透過在 web.config 中直接選擇和新增新服務來實現。這是 .NET Framework 3.0 的主要優勢之一。此外,您還可以建立自己的自定義服務並在工作流中實施它們。因此,WWF 的執行時服務是完全可擴充套件的。
託管應用程式或主機是託管工作流的應用程式。它們是實際包含嵌入在應用程式中的工作流的應用程式。
WF 工作流定義了帶有方法和事件的介面來與外部世界通訊。託管應用程式通常在執行工作流之前設定環境,提供實現這些介面的物件。當實現此類介面的物件引發事件時,將檢索相應的工作流並將資料傳遞給它。
視覺化設計器是 WWF 的一個元件,它提供工作流的流程圖模型以及不同的活動。視覺化設計器的重要功能與早期版本提供的設計器區分開來,因為它提供了一種將設計器包含在應用程式中的功能。確實,可以透過新增視覺化設計器工具將工作流的視覺化設計器模型引入應用程式。這有助於建立監視工具以及維護基於工作流的應用程式。
- 有關“Windows Workflow Foundation”的維基百科文章