WorkflowQueue Třída

Definice

Upozornění

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

Představuje frontu pracovního postupu.

public ref class WorkflowQueue
public class WorkflowQueue
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public class WorkflowQueue
type WorkflowQueue = class
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type WorkflowQueue = class
Public Class WorkflowQueue
Dědičnost
WorkflowQueue
Atributy

Příklady

Následující příklad kódu ukazuje, jak můžete vytvořit WorkflowQueue voláním WorkflowQueuingService.GetWorkflowQueue metody . Používá také Count vlastnost k určení, zda v aktuální frontě existují nějaké zprávy. Nakonec kód použije metodu Dequeue k odebrání a vrácení prvního objektu ve frontě.

Tento příklad kódu je součástí ukázky sady SDK aktivity služby File Watcher ze souboru FileSystemEvent.cs. Další informace najdete v tématu Aktivita sledovacího procesu systému souborů.

private bool ProcessQueueItem(ActivityExecutionContext context)
{
    WorkflowQueuingService qService = context.GetService<WorkflowQueuingService>();
    if (!qService.Exists(this.QueueName))
    {
        return false;
    }

    WorkflowQueue queue = qService.GetWorkflowQueue(this.QueueName);

    // If the queue has messages, then process the first one
    if (queue.Count == 0)
    {
        return false;
    }

    FileWatcherEventArgs e = (FileWatcherEventArgs)queue.Dequeue();

    // Raise the FileSystemEvent
    base.RaiseGenericEvent<FileWatcherEventArgs>(FileSystemEvent.FileWatcherEventHandlerEvent, this, e);

    DoUnsubscribe(context, this);
    DeleteQueue(context);
    return true;
}
Private Function ProcessQueueItem(ByVal context As ActivityExecutionContext) As Boolean

    Dim qService As WorkflowQueuingService = context.GetService(Of WorkflowQueuingService)()

    If Not qService.Exists(Me.QueueName) Then
        Return False
    End If

    Dim Queue As WorkflowQueue = qService.GetWorkflowQueue(Me.QueueName)

    ' If the queue has messages, then process the first one
    If Queue.Count = 0 Then
        Return False
    End If

    Dim e As FileWatcherEventArgs = CType(Queue.Dequeue(), FileWatcherEventArgs)

    ' Raise the FileSystemEvent
    MyBase.RaiseGenericEvent(Of FileWatcherEventArgs)(FileSystemEvent.FileWatcherEventHandlerEvent, Me, e)
    DoUnsubscribe(context, Me)
    DeleteQueue(context)
    Return True
End Function

Poznámky

Poznámka

V tomto materiálu jsou popsané zastaralé typy a obory názvů. Další informace naleznete v tématu Zastaralé typy ve Windows Workflow Foundation 4.5.

Fronty pracovních postupů se používají k předávání zpráv mezi hostiteli nebo hostitelskými službami a aktivitami v pracovním postupu. Libovolná aktivita může vytvořit WorkflowQueue voláním WorkflowQueuingService.CreateWorkflowQueuea hostitel, služba nebo jiná aktivita může volat Enqueue a přidat položku do WorkflowQueue. Můžete se přihlásit k odběru události, QueueItemAvailable abyste byli upozorněni na příchod položky na WorkflowQueue. K prozkoumání položky na začátku DequeueWorkflowQueue a k odebrání položky z objektu WorkflowQueuemůžete použít Peek příkaz . Každá z nich WorkflowQueue je přidružená WorkflowQueuingService k , který můžete použít k provádění dalších operací správy na WorkflowQueue, jako je například odstranění fronty. QueuingService zveřejňuje přidruženou k WorkflowQueuingService tomuto WorkflowQueue.

Vlastnosti

Count
Zastaralé.

Získá počet položek obsažených v objektu WorkflowQueue.

Enabled
Zastaralé.

Získá nebo nastaví hodnotu, která určuje, zda WorkflowQueue je povolena.

QueueName
Zastaralé.

Získá název fronty pracovního postupu.

QueuingService
Zastaralé.

Získá službu řazení front přidruženou k tomuto WorkflowQueue.

Metody

Dequeue()
Zastaralé.

Odebere a vrátí objekt na začátku objektu WorkflowQueue.

Enqueue(Object)
Zastaralé.

Přidá objekt na konec objektu WorkflowQueue.

Equals(Object)
Zastaralé.

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()
Zastaralé.

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()
Zastaralé.

Type Získá z aktuální instance.

(Zděděno od Object)
MemberwiseClone()
Zastaralé.

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
Peek()
Zastaralé.

Vrátí objekt na začátku objektu bez WorkflowQueue jeho odebrání.

RegisterForQueueItemArrived(IActivityEventListener<QueueEventArgs>)
Zastaralé.

Zaregistruje odběratele QueueItemArrived události.

RegisterForQueueItemAvailable(IActivityEventListener<QueueEventArgs>)
Zastaralé.

Zaregistruje odběratele QueueItemAvailable události.

RegisterForQueueItemAvailable(IActivityEventListener<QueueEventArgs>, String)
Zastaralé.

Zaregistruje odběratele QueueItemAvailable události.

ToString()
Zastaralé.

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
UnregisterForQueueItemArrived(IActivityEventListener<QueueEventArgs>)
Zastaralé.

Zruší registraci odběratele QueueItemArrived události.

UnregisterForQueueItemAvailable(IActivityEventListener<QueueEventArgs>)
Zastaralé.

Zruší registraci odběratele QueueItemAvailable události.

Událost

QueueItemArrived
Zastaralé.

Vyvolá se při doručení položky na tomto WorkflowQueueobjektu .

QueueItemAvailable
Zastaralé.

Vyvolá se, pokud je položka k dispozici v tomto WorkflowQueueobjektu .

Platí pro

Viz také