技術基礎之Windows Worldflow foundation

來源:互聯網
上載者:User

翻譯來至《Understanding WF in WSS and Office 2007 v1.doc》
作者:David Chappell, Chappell & Associates(鼎鼎大名)

翻譯片段,全文請查看:http://www.davidchappell.com/blog/index.html

在軟體實現中,包含一個定義的多步流轉的流程是很經常的。如果是很多程式都包含到,那麼為什麼不直接提供一個包含這種應用的軟體呢?Windows Worldflow Foundation就是出於這種目的而產生。一個基於WF的應用就是由許多工作流程(workflows)組成,每個工作流程包含有許多活動(Activities).每個活動,在工作流程的位置中,於某一時刻執行於WF運行引擎上。在對面向過程的程式中,WF可以使這些程式更容易建立和維護。
下面一張圖指出了WF的主要組件。工作流程(Workflow)又許多活動(Activities)組成,執行於引擎(Runtime Engine)上。執行過程依賴於低層的運行時服務(Runtime Services)。服務跟蹤工作流程狀態,跟蹤執行過程等。它可以宿主(Host)於傳統型程式,也可以宿主於大型伺服器中。它能對各種環境進行自適應。在需要的時候,Runtime Services能在各種環境中替換。
WF可以在Visual Studio中進行可視化的設計,可以建立各種工作流程,並拖動活動來建立。一個活動是一個類,所以你完全有可能通過全代碼的形式來編寫活動。工作流程可以又任何活動組成,包括WF中提供的BAL(Base Activity Library),也可以用自己建立的活動。BAL包含一些通用的,基礎性的活動:
  >>IFElse:根據條件,有兩種或更多的可選路徑。
  >>While:重複執行一個或多個活動。
  >>Sequence:順序指定一組活動。
  >>Parallet:同時執行兩組或多組活動。
  >>Code:執行一個定義的程式碼片段。
  >>Listen:監聽事件集,當事件發生,觸發執行活動。
  >>InvokeWebService:引用WebService。
  >>Policy:用WF提供的規則引擎來定義、執行商務邏輯。
WF提供兩種內建的工作流程:
  >>Sequential Workflows:執行定義的一系列活動,它可以包含IFElse、While等所有活動。
  >>State machine workflows:執行傳統有限狀態機器,它可以包含IFElse、While等活動。它以來於其他活動的狀態來轉換。

理解WF不是工作流程應用程式,而是提供一個基礎來開發工作流程應用是很重要的。它可以宿主在任何的Windows應用中,也可以和其他技術結合來提供工作流程服務。WWSv3就是個很好的例子。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.