標籤:style 使用 strong io c 問題 cti 代碼
Windows Workflow Foundation程式開發-基於XAML和C#的WF實戰技術與常式
——C#程式員的WF功能與編程介面技術指導
前言
Windows Workflow Foundation(簡稱WF),是一項對工作流程進行定義、執行和管理的技術。它是.NET架構3.0版的一部分,並且將來會被整合到Windows Vista作業系統中。
繼COM+和分散式交易協調器之後,WF可被看作是Windows平台上最令人矚目的一款中介軟體產品。WF與前兩者的區別在於:不是每一個軟體應用都需要進行分散式交易處理;但幾乎每個軟體都要在其內部實現工作流程。
在本書協助下,你可以為你的軟體添加上工作流程動力。
本書的內容
第1章向我們介紹了工作流程的基本概念,說明了WF是如何處理那些存在於工作流程解決方案中的疑難問題。“活動(Activity)”是構建工作流程定義的基本模組,我們將對它們建立起初步的印象,並且會學習如何使用Visual Studio 2005編製一個簡單的工作流程。本章同時對WF提供的運行時服務進行了描述。閱讀完本章內容,我們就會對WF的基本特徵有所瞭解。
第2章的重點是如何編製工作流程。特別地,我們會學習怎樣應用C#和可擴充應用程式標記語言(英文簡稱XAML)構建工作流程。通過使用工作流程編譯器,我們可以更為透徹地瞭解:WF是如何通過代碼產生器從工作流程標記碼中自動產生類代碼的,以及這些自動產生的程式碼又是如何與我們的手寫代碼聯合產生一個工作流程類型的。這一章將提供一些基礎知識,這有助於我們瞭解WF在編譯階段是如何啟動並執行。
在第3章裡,我們關注的是順序工作流程。我們會對SequenceActivity進行一番研究,學習一些與事件相關的知識,這些事件都是在一個工作流程執行個體的生存期內由工作流程運行時引發的。利用Visual Studio,我們可以建立一些工作流程,它們既可以接收參數也能夠以調用方法和偵聽事件的方式與其宿主進程進行通訊。在本章的最後部分將介紹一個工作流程常式,在這個常式中,工作流程會首先產生一個異常,然後展示如何利用錯誤處理器捕獲到該異常。
第4章會向我們介紹WF基本活動庫中的每一個成員。我們會學習控制流程活動、通訊活動、以及面向事務的活動。本章也會提及Web服務活動、基於規則的活動和狀態活動。本章的目的在於使我們不僅認識到基本活動庫的所有功能,而且能夠知曉每種活動所能處理的具體問題。
有了基本活動庫的知識作鋪墊,我們會在第5章嘗試建立自訂活動。本章首先列舉出了建立自訂活動的驅動力,隨後提供了一個建立自訂活動的常式,並在具體開發過程中應用了2種方法:組合法和派生法。我們將會看到如何為自訂活動定製驗證器和設計器,也將領略到使用相依性屬性的優勢所在。本章最後還要講解活動的執行內容,這對於開發出健壯的活動是必不可少的。
第6章講述了工作流程運行時、工作流程診斷,以及由微軟公司提供的一些開箱即用的WF服務。本章示範了如何使用聲明和編程兩種方法對服務進行配置。我們會通過一些常式學習如何使用調度服務、持久化服務和追蹤服務。本章提供了足夠多的有關WF服務的資訊,這使得工作流程開發人員在面對多種不同應用情境和環境時都能夠依照需求選擇和配置出適合的服務。
第7章關注的是如何使用狀態機器構建事件驅動的工作流程。我們會看到WF如何使用活動對傳統的狀態機器進行建模,同時,我們將建立一個能夠處理外來事件並驅動狀態轉換的工作流程。我們還會看到如何對狀態機器的執行曆史進行追蹤和檢驗。本章最後部分對分層狀態機器進行了一番研究,掌握了這部分的知識,我們就可以處理事件驅動工作流程中的一些棘手問題了。
第8章都是與工作流程通訊相關的內容。本章首先描述了通過相關本地服務與宿主進程通訊的方法,隨後說明了如何使用Web服務活動進行網路通訊。最後,我們將瞭解到身處後台默默地為工作流程協調和傳送訊息的佇列服務。
最後的第9章會講解WF中用到的規則與條件。這裡討論了商務規則在軟體開發中的角色,隨後提供了一個常式來說明WF的規則引擎如何能夠減輕規則開發的工作量。本章對PolicyActivity中的規則執行進行了深入的說明,並記錄了規則評估的診斷資訊。在WF程式開發之旅的最後一程,我們將學習如何使用WF建立基於規則的解決方案。