主機通訊範例
這個範例會示範如何使用本機服務介面來與工作流程主應用程式 (Host Application) 通訊。
為了讓主應用程式與執行中的工作流程通訊,這時必須使用本機服務類別。本機服務類別會實作可以由主應用程式呼叫的方法,以及工作流程可透過 HandleExternalEventActivity 活動來接聽的事件。ExternalDataExchangeService 服務會透過使用 AddService 來新增至工作流程執行階段,然後本機服務類別會新增到外部資料交換服務中。工作流程接著會查詢本機服務類別所實作的介面來存取本機服務。
在此範例中,服務類別 VotingService 的執行個體會新增到執行階段中。工作流程接著會透過查詢實作 IVotingService 介面的物件,與此服務進行互動。
投票服務類別與介面支援兩個事件:ApprovedProposal 和 RejectedProposal。主應用程式會透過 CreateBallot 方法來引發這些事件,而這些事件接著會在工作流程中經由 HandleExternalEventActivity 活動 (來自 ListenActivity 活動) 進行處理。
建置範例
按一下 [下載範例] 來下載範例。
這樣便會將範例專案擷取到本機硬碟上。
按一下 [開始],並依序指向 [程式集] 和 [Microsoft Windows SDK],再按一下 [CMD 殼層]。
移至範例的來源目錄。
在命令提示字元上,輸入 MSBUILD <Solution file name>。
執行範例
- 在 [SDK 命令提示字元] 視窗中,執行 HostCommunication\bin\debug 資料夾 (若是範例的 VB 版本,則是 HostCommunication\bin 資料夾) 中的 .exe 檔案,該資料夾位於此範例的主要資料夾下方。
請參閱
參考
HandleExternalEventActivity
ListenActivity
其他資源
Using the HandleExternalEventActivity Activity
Creating Custom Communication Activities
Communicating with Other Workflows
Using the ListenActivity Activity
活動範例
通訊範例
Windows Workflow Foundation 範例
Copyright © 2007 by Microsoft Corporation. All rights reserved.