WorkflowQueue Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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 najdete v tématu Zastaralé typy ve Windows Workflow Foundation 4.5.
Fronty pracovního postupu slouží k předávání zpráv mezi hostiteli nebo hostitelskými službami a aktivitami v pracovním postupu. Libovolná WorkflowQueue aktivita může vytvořit objekt voláním WorkflowQueuingService.CreateWorkflowQueuea hostitel, služba nebo jiná aktivita může volat Enqueue a přidat do této WorkflowQueuepoložky položku . Můžete se přihlásit k odběru QueueItemAvailable události, abyste byli upozorněni, když dorazí položka na WorkflowQueue. Můžete použít Peek k prozkoumání položky na začátku WorkflowQueue a Dequeue k odebrání položky z objektu WorkflowQueue. Každá z nich WorkflowQueue je přidružená WorkflowQueuingService k nástroji, který můžete použít k provádění dalších operací správy na WorkflowQueue, jako je odstranění fronty. QueuingService zobrazí 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 fronty 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é.
Získá aktuální Type instanci. (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>, String) |
Zastaralé.
Zaregistruje odběratele QueueItemAvailable události. |
RegisterForQueueItemAvailable(IActivityEventListener<QueueEventArgs>) |
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é.
Nastane při doručení položky na tomto WorkflowQueueobjektu . |
QueueItemAvailable |
Zastaralé.
Nastane, když je k dispozici položka v tomto WorkflowQueueobjektu . |