WorkflowInstance.EnqueueItemOnIdle Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Sendet eine Nachricht an die angegebene Workflowwarteschlange, wenn der Workflow im Leerlauf ist. EnqueueItemOnIdle(IComparable, Object, IPendingWork, Object) wartet, bis der Workflow einen Leerlaufpunkt erreicht und nach der Überprüfung, ob der Workflowplaner im Leerlauf ist (d. a. es wird kein aktiver Vorgang ausgeführt).
public:
void EnqueueItemOnIdle(IComparable ^ queueName, System::Object ^ item, System::Workflow::Runtime::IPendingWork ^ pendingWork, System::Object ^ workItem);
public void EnqueueItemOnIdle(IComparable queueName, object item, System.Workflow.Runtime.IPendingWork pendingWork, object workItem);
member this.EnqueueItemOnIdle : IComparable * obj * System.Workflow.Runtime.IPendingWork * obj -> unit
Public Sub EnqueueItemOnIdle (queueName As IComparable, item As Object, pendingWork As IPendingWork, workItem As Object)
Parameter
- queueName
- IComparable
Der Name des WorkflowQueue.
- item
- Object
Das Objekt, das queue.
- pendingWork
- IPendingWork
Eine IPendingWork , die es dem Absender ermöglicht, benachrichtigt zu werden, wenn item er zugestellt wird.
- workItem
- Object
Ein Objekt, das an die IPendingWork Methoden übergeben werden soll.
Ausnahmen
queueName ist ein Nullverweis (Nothing in Visual Basic).
Das Workflowlaufzeitmodul wird nicht ausgeführt.
-oder-
Die Workflowinstanz wird angehalten.
-oder-
Das WorkflowQueue angegebene By queueName ist nicht vorhanden.
-oder-
Die WorkflowQueue angegebene Angabe queueName ist nicht aktiviert.
Hinweise
Wartet darauf, dass die Workflowinstanz im Leerlauf ist, und sendet dann den item Wert an die angegebene WorkflowQueue. Wenn Sie während des Anhaltens der Workflowinstanz aufrufen EnqueueItemOnIdle , löst das Workflowlaufzeitmodul einen Ausrufevorgang aus InvalidOperationException. Wenn Sie benachrichtigt werden möchten, wenn die Nachricht zugestellt wird, können Sie sie in Ihrem Dienst implementieren IPendingWork und ein workItem Objekt IPendingWork übergeben.EnqueueItem Wenn Sie diese Benachrichtigung nicht wünschen, können Sie einen NULL-Verweis (Nothing in Visual Basic) für pendingWork und workItem übergeben.
Wenn Sie diese Methode mit einem Zustandsautomatworkflow verwenden, erhalten Sie möglicherweise eine Ausnahme, die die Meldung "Warteschlange '{0}' ist nicht aktiviert" enthält. Dies geschieht, wenn der aktuelle Zustand des Zustandscomputers nicht weiß, wie ein bestimmtes Ereignis behandelt wird. Wenn beispielsweise ein anderer Zustand als der aktuelle Zustand die enthalten, die EventDrivenActivity durch HandleExternalEventActivity die Warteschlange '{0}' dargestellt wird.