次の方法で共有


EventDrivenActivity アクティビティの使用

EventDrivenActivity アクティビティは、イベントによって実行開始されるアクティビティのシーケンスを格納します。このイベントは、IEventActivity インターフェイスから派生する必要のあるシーケンス内の最初の子アクティビティによってサブスクライブされます。IEventActivity インターフェイスは、外部イベントを待機するアクティビティ (たとえば HandleExternalEventActivityDelayActivity) によって実装されます。

シーケンシャル ワークフロー内では、IEventActivity から派生する複数のアクティビティを EventDrivenActivity アクティビティの中に格納できます。

ステート マシン ワークフロー内では、StateActivity アクティビティの直接の子として、またはワークフロー自体に、EventDrivenActivity アクティビティを追加できます。ただし、ステート マシン ワークフロー内で EventDrivenActivity アクティビティを使用する場合、IEventActivity から派生するただ 1 つのアクティビティだけを使用でき、このアクティビティはステート内の最初のアクティビティでなければなりません。その理由は、Windows Workflow Foundation によって実装されるステート マシン ワークフロー モデルが一度に 1 つの EventDrivenActivity アクティビティだけを処理するためです。たとえば、1 つの EventDrivenActivity アクティビティ内の複数の IEventActivity アクティビティが実行可能である場合、一度も実行されない IEventActivity を待機する EventDrivenActivity アクティビティがブロックされる可能性があります。これによって、ステート マシンがメッセージをそれ以上処理できなくなる可能性があります。

詳細については、『Windows Workflow Foundation クラス ライブラリ リファレンス』の System.Workflow.Activities 名前空間にある EventDrivenActivity クラスおよび IEventActivity インターフェイスを参照してください。

EventDrivenActivity アクティビティの使用方法を示すコード サンプルについては、「Listen Sample」を参照してください。

関連項目

参照

EventDrivenActivity
IEventActivity

概念

ListenActivity アクティビティの使用
EventHandlersActivity アクティビティの使用

Footer image

Copyright © 2007 by Microsoft Corporation.All rights reserved.