Condividi tramite


WorkflowCreationContext.OnBeginWorkflowCompleted Metodo

Definizione

Inizia un'operazione asincrona per eseguire la notifica di completamento dell'istanza del flusso di lavoro. Questo metodo viene chiamato quando l'istanza del flusso di lavoro associata a WorkflowCreationContext viene completata. Le classi derivate possono eseguire l'override di questa operazione per eseguire azioni personalizzate al completamento dell'istanza del flusso di lavoro.

protected public:
 virtual IAsyncResult ^ OnBeginWorkflowCompleted(System::Activities::ActivityInstanceState completionState, System::Collections::Generic::IDictionary<System::String ^, System::Object ^> ^ workflowOutputs, Exception ^ terminationException, TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
protected internal virtual IAsyncResult OnBeginWorkflowCompleted (System.Activities.ActivityInstanceState completionState, System.Collections.Generic.IDictionary<string,object> workflowOutputs, Exception terminationException, TimeSpan timeout, AsyncCallback callback, object state);
abstract member OnBeginWorkflowCompleted : System.Activities.ActivityInstanceState * System.Collections.Generic.IDictionary<string, obj> * Exception * TimeSpan * AsyncCallback * obj -> IAsyncResult
override this.OnBeginWorkflowCompleted : System.Activities.ActivityInstanceState * System.Collections.Generic.IDictionary<string, obj> * Exception * TimeSpan * AsyncCallback * obj -> IAsyncResult
Protected Friend Overridable Function OnBeginWorkflowCompleted (completionState As ActivityInstanceState, workflowOutputs As IDictionary(Of String, Object), terminationException As Exception, timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult

Parametri

completionState
ActivityInstanceState

Stato dell'istanza del flusso di lavoro.

workflowOutputs
IDictionary<String,Object>

Una raccolta di coppie chiave/valore contenenti output generato dall'istanza del flusso di lavoro.

terminationException
Exception

Se presente, un errore che ha causato l'interruzione del flusso di lavoro.

timeout
TimeSpan

L'intervallo di tempo durante il quale l'operazione asincrona deve essere completata.

callback
AsyncCallback

Il percorso in un'applicazione al quale il controllo torna al completamento dell'operazione asincrona.

state
Object

Stato definito dall'utente.

Restituisce

Stato dell'operazione asincrona.

Esempio

Nell'esempio seguente viene illustrato come implementare il metodo OnBeginWorkflowCompleted.

protected override IAsyncResult OnBeginWorkflowCompleted(ActivityInstanceState completionState, IDictionary<string, object> workflowOutputs,
    Exception faultedReason, TimeSpan timeout, AsyncCallback callback, object state)
{
    if (completionState == ActivityInstanceState.Faulted)
    {
        Console.WriteLine("InstanceId :" + InstanceId + " OnBeginWorkflowTerminated");
    }
    else if (completionState == ActivityInstanceState.Canceled)
    {
        Console.WriteLine("InstanceId :" + InstanceId + " OnBeginWorkflowCanceled");
    }
    else
    {
        Console.WriteLine("InstanceId :" + InstanceId + " OnBeginWorkflowCompleted");
        WorkflowHostingResponseContext responseContext = UserState as WorkflowHostingResponseContext;
        if (responseContext != null)
        {
            foreach (object value in workflowOutputs.Values)
            {
                responseContext.SendResponse(value, null);
                break;
            }
        }
    }
    return base.OnBeginWorkflowCompleted(completionState, workflowOutputs, faultedReason, timeout, callback, state);
}

Si applica a