Bagikan melalui


WorkflowQueue Kelas

Definisi

Perhatian

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

Mewakili antrean alur kerja.

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
Warisan
WorkflowQueue
Atribut

Contoh

Contoh kode berikut menunjukkan bagaimana Anda dapat membuat WorkflowQueue dengan memanggil WorkflowQueuingService.GetWorkflowQueue metode . Ini juga menggunakan Count properti untuk menentukan apakah ada pesan dalam antrean saat ini. Terakhir, kode menggunakan Dequeue metode untuk menghapus dan mengembalikan objek pertama dalam antrean.

Contoh kode ini adalah bagian dari Sampel SDK Aktivitas Pengamat File dari file FileSystemEvent.cs. Untuk informasi selengkapnya, lihat Aktivitas Pengamat Sistem File.

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

Keterangan

Catatan

Materi ini membahas jenis dan namespace layanan yang sudah tidak digunakan. Untuk informasi selengkapnya, lihat Tipe Yang Tidak Digunakan Lagi di Windows Workflow Foundation 4.5.

Antrean alur kerja digunakan untuk meneruskan pesan antara layanan host atau host dan aktivitas dalam alur kerja. Aktivitas apa pun dapat membuat WorkflowQueue dengan memanggil WorkflowQueuingService.CreateWorkflowQueue, dan host, layanan, atau aktivitas lain dapat memanggil Enqueue untuk menambahkan item ke WorkflowQueue. Anda dapat berlangganan acara untuk QueueItemAvailable diberi tahu ketika item tiba di WorkflowQueue. Anda dapat menggunakan Peek untuk memeriksa item di awal WorkflowQueue dan Dequeue untuk menghapus item dari WorkflowQueue. Masing-masing WorkflowQueue dikaitkan dengan WorkflowQueuingService yang dapat Anda gunakan untuk melakukan operasi manajemen lain pada WorkflowQueue, seperti menghapus antrean. QueuingService mengekspos yang WorkflowQueuingService terkait dengan ini WorkflowQueue.

Properti

Count
Kedaluwarsa.

Mendapatkan jumlah item yang terkandung dalam WorkflowQueue.

Enabled
Kedaluwarsa.

Mendapatkan atau menetapkan nilai yang menentukan apakah WorkflowQueue diaktifkan.

QueueName
Kedaluwarsa.

Mendapatkan nama antrean alur kerja.

QueuingService
Kedaluwarsa.

Mendapatkan layanan antrean yang terkait dengan ini WorkflowQueue.

Metode

Dequeue()
Kedaluwarsa.

Menghapus dan mengembalikan objek di awal WorkflowQueue.

Enqueue(Object)
Kedaluwarsa.

Menambahkan objek ke akhir WorkflowQueue.

Equals(Object)
Kedaluwarsa.

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()
Kedaluwarsa.

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()
Kedaluwarsa.

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()
Kedaluwarsa.

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
Peek()
Kedaluwarsa.

Mengembalikan objek di awal WorkflowQueue tanpa menghapusnya.

RegisterForQueueItemArrived(IActivityEventListener<QueueEventArgs>)
Kedaluwarsa.

Mendaftarkan pelanggan ke acara tersebut QueueItemArrived .

RegisterForQueueItemAvailable(IActivityEventListener<QueueEventArgs>)
Kedaluwarsa.

Mendaftarkan pelanggan ke acara tersebut QueueItemAvailable .

RegisterForQueueItemAvailable(IActivityEventListener<QueueEventArgs>, String)
Kedaluwarsa.

Mendaftarkan pelanggan ke acara tersebut QueueItemAvailable .

ToString()
Kedaluwarsa.

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)
UnregisterForQueueItemArrived(IActivityEventListener<QueueEventArgs>)
Kedaluwarsa.

Membatalkan pendaftaran pelanggan ke acara.QueueItemArrived

UnregisterForQueueItemAvailable(IActivityEventListener<QueueEventArgs>)
Kedaluwarsa.

Membatalkan pendaftaran pelanggan ke acara.QueueItemAvailable

Acara

QueueItemArrived
Kedaluwarsa.

Terjadi ketika item dikirimkan pada ini WorkflowQueue.

QueueItemAvailable
Kedaluwarsa.

Terjadi ketika item tersedia pada ini WorkflowQueue.

Berlaku untuk

Lihat juga