小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

關(guān)于WF的12點總結(jié)

 loudf 2012-07-06
WF本身并不是一個業(yè)務(wù)平臺,它只是為開發(fā)人員提供創(chuàng)建工作流軟件的一個平臺,也就是說WF不是工作流應(yīng)用平臺,而是一個開發(fā)工作流應(yīng)用的平臺。

一、使用WF可以開發(fā)具有以下特點的工作流平臺
    1.業(yè)務(wù)流程輔助辦公軟件
    2.軟體內(nèi)部工作的順控制
    3.自動篩選查詢類系統(tǒng)
    4.自動化控制中

二、WF作為net3.0的一部分發(fā)布,要運行需要安裝net3.0

    WF提供了一個在VS2005中可視化設(shè)計工作流的設(shè)計器,Visual Studio 2005 Extensions for Windows Workflow Foundation,只有安裝后才能在VS2005中建立WF項目

三、WF提供了兩類工作流模式,流模式(Sequential)與狀態(tài)機(jī)模式(State Machine ),可以簡單的將狀態(tài)機(jī)模式看成是有交互點與Goto指令的流模式,設(shè)計工作流,其實沒有什么應(yīng)該的模式,用狀態(tài)機(jī)模式作主流程,管理業(yè)務(wù)狀態(tài),流模式作 子流程,完成具體的業(yè)務(wù)操作是一個不錯的方案。

四、WF為工作流設(shè)計提供了一系列的Activity控件,從型式上分為兩類:
        簡單工能類(System.Workflow.ComponentModel.Activity)
        容器類(System.Workflow.ComponentModel.CompositeActivity),
        Activity <- CompositeActivity

包括以下具體控件:
    CodeActivity:可以添加代碼,
    IfElseActivity:類似于if語句,
    SuspendActivity:類似于線程掛起語句,
    DelayActivity:類似于線程休眠語句 ,
    CallExternalMethodActivity:類似于調(diào)用方法語句,
    HandleExternalEventActivity:類似于觸發(fā)事件語句,
    WhileActivity:類似于While語句,
    terminateActivity: 類似于終止語句,
    ThrowActivity:類似于自定義異常語句,
    ConditionedActivityGroup:有點像foreach語句,
    replicatorActivity:有點像for語句
    PolicyActivity:有點像職責(zé)鏈
    可以用InvokeWebServiceActivity調(diào)用WebService
    可以用WebServiceInputActivity ,WebServiceOutputActivity 將工作流發(fā)布成WebService
    可以用InvokeWorkflowActivity調(diào)用子流程
    還有一些用于控制流程、控制狀態(tài)、事務(wù)處理、異常處理的控件

五、工作流以模板方式存在,以實例的方式運行
    WF的工作流模板可以是一個編譯成DLL的NET類庫文件,也可以是一個用XML描繪結(jié)點關(guān)系的字符串,工作流實例是每個用戶依據(jù)模板定義的軌道實現(xiàn)具體業(yè)務(wù)的一組狀態(tài)數(shù)據(jù),實例要在引擎中運行,實例可以保存到數(shù)據(jù)庫或磁盤文件中。
    工作流提供了一個運行實例的引擎,引擎不是以一個獨立服務(wù)的方式發(fā)布的,而是可以獨立線程的方式寄生在任意程中。被寄生的程序叫宿主,宿主與引擎可以通過接口進(jìn)行交互,控制引擎以及與引擎中的工作流實例通信。
    引擎中可以同時運行多個實例,宿主中可以同時運行多個引擎。

六、WF提供了一系列引擎加載服務(wù),,監(jiān)聽,數(shù)據(jù)通信ExternalDataExchange
1.持久化服務(wù)
    WF提供了SqlWorkflowPersistenceService,用于將實例持久化到一數(shù)據(jù)庫 中,SqlWorkflowPersistenceService的數(shù)據(jù)庫生成文件在[系統(tǒng)盤\Windows\Microsoft.NET \Framework\v3.0\Windows Workflow Foundation\SQL\EN]下SqlPersistenceService_Schema.sql與 SqlPersistenceService_Logic.sql

    也可派生PersistenceService,建立自定義持久化服務(wù)

2.監(jiān)聽(跟蹤)服務(wù)
    WF提供了SqlTrackingService,用于監(jiān)聽實例的運行狀態(tài),并將狀態(tài)保存到數(shù)據(jù)中,SqlTrackingService的數(shù)據(jù)庫生成文 件在[系統(tǒng)盤\Windows\Microsoft.NET\Framework\v3.0\Windows Workflow Foundation\SQL\EN]下Tracking_Schema.sql與Tracking_Logic.sql
    使用SqlTrackingQuery,可以從數(shù)據(jù)庫中查詢實例的狀態(tài)
   
    也可派生TrackingService,建立自定義監(jiān)聽服務(wù)

    對要監(jiān)聽的內(nèi)容,可以自定義 TrackingProfile,進(jìn)行篩選

3.數(shù)據(jù)通信服務(wù)
    WF提供了ExternalDataExchange,用于實現(xiàn)宿主與實例的通信,CallExternalMethodActivity與HandleExternalEventActivity依賴于該服務(wù)

4.還有其他一些服務(wù),如ManualWorkflowSchedulerService,以單程方式運行實例,在實例有與外部設(shè)備交互時非常有用.

七、可以自定義流程設(shè)計器
   WF提供了System.Workflow.ComponentModel.Design.WorkflowView控件,該控件可以用圖形的方式顯示工作流結(jié)構(gòu)

八、可以用WorkflowChanges在實例運行時使用,動態(tài)添加刪除結(jié)點。
   
九、可以用WorkflowMarkupSerializer將工作流模板類轉(zhuǎn)換為XML字串格式

十、WF為流程控制類Activity提供了規(guī)則對象

十一、WF提供了WorkflowRole對象,可以自定義角色,使用AD角色、使用ASP.NET20角色

十二、關(guān)于通信
   不經(jīng)常開發(fā)多線程應(yīng)用,對WF又不熟的朋友,總有一個習(xí)慣就是從引擎中得到實例,然后直接操作,這個方式是單線程開發(fā)中常用的,不用考慮資源訪問沖突,但 在WF中實例與宿主、引擎的關(guān)系,就像操作多線程資源一樣,實例被引擎線程???,宿主要與實例通信不能直接進(jìn)行,要通過一個專用通道.
   1.可以使用啟動參數(shù),動態(tài)結(jié)點,插入隊列的方式實現(xiàn)宿主與引擎中的實例推方式通信,
   2.也可以在設(shè)計時使用CallExternalMethodActivity,HandleExternalEventActivity,或自定義狀態(tài)點的方式實現(xiàn)宿主與引擎中的實例拉模式的通信

結(jié)語
   MS將WF作為Vista的一個基本API發(fā)布,而不是一個獨立的軟件(如BizTalk,Office,CRM,Exchange),其意圖不可能是簡 單染指現(xiàn)有的工作流業(yè)務(wù)平臺這么簡單,也許WF的出現(xiàn)如同VB的出現(xiàn)一樣,VB是可視化界面設(shè)計, WF可能要實現(xiàn)可視化代碼設(shè)計也說不定。
   又一個輪回開始了嗎?
   是一個全新的面向過程開發(fā)的時代到來了嗎?
     
   MS下一步想干什么?我不知,DOM好像win98的IE4就有了.現(xiàn)在MS才掀起Atlas熱潮
   Win95就有媒體播放器、NetMeeting,可MS近兩年才開始正式涉足媒體播放,即時通信領(lǐng)域,他還說什么市場分析失誤。真是十年藏一劍。
   在MS舞出的絢麗劍花里,我們又悟出了他多少劍道呢?
   MS真的很了不起,希望對他的技術(shù)可以Inherits后再Overrides,而不是簡單的New完Invoke一下.

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多