WorkflowQueue.UnregisterForQueueItemAvailable 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取消 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