從主機動態更新範例

Download sample

這個範例會示範如何從工作流程外部 (也就是從主機程式) 動態更新工作流程執行個體。

此工作流程是設計用來接收某些總額的採購單要求。這個工作流程具有後面跟著 POCreated CodeActivity 活動的 CreditCheck DelayActivity 活動。不過,因不尋常狀況的發生,所有的採購單要求都必須加以拒絕。這時主機會執行動態更新來移除採購單建立步驟,藉此拒絕所有的採購單要求。這項動態變更會由主機在工作流程的外部執行。

因發生非預期事件而必須拒絕所有採購單要求的更為實際案例,就是讓主機對所有執行中的執行個體發出 Suspend 要求,然後再對這些執行個體執行動態更新。

在此範例中,將設計出現 CreditCheck DelayActivity 活動來形成這個非預期事件的案例,而此活動會給予主機在工作流程執行個體中的某個位置處理 WorkflowIdled 事件的機會。

當您建置及執行此範例時,您的輸出將與下面類似:

主機的動態更新範例輸出

若要建置範例

  1. 按一下 [下載範例] 來下載範例。

    這樣便會將範例專案擷取到本機硬碟上。

  2. 按一下 [開始],並依序指向 [程式集] 和 [Microsoft Windows SDK],再按一下 [CMD 殼層]。

  3. 移至範例的來源目錄。

  4. 在命令提示字元上,輸入 MSBUILD <Solution file name>

執行範例

  • 在 [SDK 命令提示字元] 視窗中,執行 DynamicUpdateFromHost\bin\debug 資料夾 (若是範例的 VB 版本,則是 DynamicUpdateFromHost\bin 資料夾) 中的 .exe 檔案,該資料夾位於此範例的主要資料夾下方。

請參閱

參考

RuleDefinitions
RuleConditionCollection
RuleExpressionCondition
ApplyWorkflowChanges
WorkflowChanges

其他資源

Using Dynamic Updates in Workflows
Applying Dynamic Updates to Workflows
動態更新範例
從主機動態更新範例
Dynamic Updates to Rule Conditions

Footer image

Copyright © 2007 by Microsoft Corporation. All rights reserved.