引發事件來載入工作流程範例
為了傳送要進行核准的文件,本範例中的工作流程會使用繫結至 DocumentApprovalInterface 之 RequestDocumentApproval 方法的 CallExternalMethodActivity 活動。工作流程中的下一個活動則是處理 DocumentApproved 事件的 HandleExternalEventActivity 活動。
執行階段已經設定成每當工作流程一處於閒置狀態便卸載工作流程執行個體,閒置就是指不用為該執行個體進行任何工作的狀態。由於 HandleExternalEventActivity 活動可能會等候很久 (可能為數天或數週) 才能進行文件核准,所以這是相當重要的功能。
DocumentApprovalInterface 會定義傳送和接收文件核准的方法及事件。DocumentApprovalService 類別會實作 DocumentApprovalInterface,以便代理讓資料流入和流出工作流程與主應用程式 (Host Application) 的方法呼叫和事件處理。
工作流程會透過 RequestDocumentApproval 方法傳送要核准的文件來初始化文件核准程序,而該程序會接著將文件傳遞給目標 (尚未實作)。當工作流程變成閒置時,便會呼叫主機 OnWorkflowIdled 事件處理常式。在此同時,執行階段則會透過 FilePersistenceService 卸載工作流程執行個體。在 WorkflowIdled 處理常式中,我們會對工作流程引發 DocumentApproved 事件。DocumentApproved 事件會傳遞到 HandleExternalEventActivity documentApprovedInvoked 處理常式。
此範例也會使用將工作流程狀態序列化至檔案的自訂持續性服務 (FilePersistenceService)。
當您建置和執行應用程式時,您的輸出將與下列類似:
建置範例
按一下 [下載範例] 來下載範例。
這樣會將範例專案擷取到本機硬碟上。
按一下 [開始],並依序指向 [程式集] 和 [Microsoft Windows SDK],再按一下 [CMD 殼層]。
移至範例的來源目錄。
在命令提示字元上,輸入 MSBUILD RaiseEventToLoadWorkflow.sln。
執行範例
- 在 [SDK 命令提示字元] 視窗中,於 DocumentApprovalWorkflow\bin\debug 資料夾 (若是範例的 VB 版本,則是 DocumentApprovalWorkflow\bin 資料夾) 中執行此 .exe 檔案,該資料夾位於此範例的主要資料夾下方。
請參閱
其他資源
Copyright © 2007 by Microsoft Corporation. All rights reserved.