Windows workflow中的IEventActivity接口
实现IEventActivity接口的活动可以和ListenActivity活动配合使用。
IEventActivity接口的原型如下
在ListenActivity中的IEventActivity活动的执行过程为
Subscribe();
Unsubscribe();
Execute();
不在ListenActivity中的活动的执行过程为
Execute();
Waitting for queue event.
IEventActivity接口的原型如下
1IComparable QueueName
2{
3 get;
4}
5void Subscribe(ActivityExecutionContext parentContext, IActivityEventListener<QueueEventArgs> parentEventHandler);
6
7void Unsubscribe(ActivityExecutionContext parentContext, IActivityEventListener<QueueEventArgs> parentEventHandler);
其中QueueName表示消息队列的名字。将IEventActivity活动放入在ListenActivity中时,ListenActivity活动启动时首先调用Subscribe方法,表示它开始订阅事件,通常应该在这儿做初始化工作。当ListenActivity活动从消息队列中收到一条消息时,它将调用Unsubscrible方法,表示已经收到消息,在此方法实现时应当从消息队列中读取消息,并做一些资源清理工作。2{
3 get;
4}
5void Subscribe(ActivityExecutionContext parentContext, IActivityEventListener<QueueEventArgs> parentEventHandler);
6
7void Unsubscribe(ActivityExecutionContext parentContext, IActivityEventListener<QueueEventArgs> parentEventHandler);
在ListenActivity中的IEventActivity活动的执行过程为
Subscribe();
Unsubscribe();
Execute();
不在ListenActivity中的活动的执行过程为
Execute();
Waitting for queue event.