次の方法で共有


WorkflowQueue.UnregisterForQueueItemAvailable メソッド

定義

QueueItemAvailable イベントに登録されたサブスクライバーの登録を解除します。

public:
 void UnregisterForQueueItemAvailable(System::Workflow::ComponentModel::IActivityEventListener<System::Workflow::ComponentModel::QueueEventArgs ^> ^ eventListener);
public void UnregisterForQueueItemAvailable (System.Workflow.ComponentModel.IActivityEventListener<System.Workflow.ComponentModel.QueueEventArgs> eventListener);
member this.UnregisterForQueueItemAvailable : System.Workflow.ComponentModel.IActivityEventListener<System.Workflow.ComponentModel.QueueEventArgs> -> unit
Public Sub UnregisterForQueueItemAvailable (eventListener As IActivityEventListener(Of QueueEventArgs))

パラメーター

eventListener
IActivityEventListener<QueueEventArgs>

QueueEventArgs インターフェイスを実装する IActivityEventListener<T> のサブスクライバー。

例外

eventListener が null 参照 (Visual Basic の場合は Nothing) です。

次のコード例は、WorkflowQueue メソッドを呼び出して WorkflowQueuingService.GetWorkflowQueue を作成する方法を示しています。 また、UnregisterForQueueItemAvailable を使用して、指定されたリスナーの登録を解除します。

このコード例は、FileSystemEvent.cs ファイルに含まれている、ファイル監視アクティビティの SDK サンプルの一部です。 詳細については、「 ファイル システム ウォッチャー アクティビティ」を参照してください。

private void DoUnsubscribe(ActivityExecutionContext context, IActivityEventListener<QueueEventArgs> listener)
{
    if (!this.subscriptionId.Equals(Guid.Empty))
    {
        FileWatcherService fileService = context.GetService<FileWatcherService>();
        fileService.UnregisterListener(this.subscriptionId);
        this.subscriptionId = Guid.Empty;
    }

    WorkflowQueuingService qService = context.GetService<WorkflowQueuingService>();
    WorkflowQueue queue = qService.GetWorkflowQueue(this.QueueName);

    queue.UnregisterForQueueItemAvailable(listener);
}
Private Sub DoUnsubscribe(ByVal context As ActivityExecutionContext, ByVal listener As IActivityEventListener(Of QueueEventArgs))
    If Not Me.subscriptionId.Equals(Guid.Empty) Then
        Dim fileService As FileWatcherService = context.GetService(Of FileWatcherService)()
        fileService.UnregisterListener(Me.subscriptionId)
        Me.subscriptionId = Guid.Empty
    End If

    Dim qService As WorkflowQueuingService = context.GetService(Of WorkflowQueuingService)()
    Dim queue As WorkflowQueue = qService.GetWorkflowQueue(Me.QueueName)
    queue.UnregisterForQueueItemAvailable(listener)
End Sub

適用対象

こちらもご覧ください