Partilhar via


WorkflowCreationContext.OnBeginWorkflowCompleted Método

Definição

Inicia uma operação assíncrona para executar a notificação de conclusão de instância de fluxo de trabalho. Este método é chamado quando a instância de fluxo de trabalho associada a este WorkflowCreationContext é concluída. As classes derivadas podem substituir essa operação para executar ações personalizadas na conclusão da instância de fluxo de trabalho.

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

Parâmetros

completionState
ActivityInstanceState

O estado da instância de fluxo de trabalho.

workflowOutputs
IDictionary<String,Object>

Uma coleção de pares chave-valor que contêm a saída gerada pela instância de fluxo de trabalho.

terminationException
Exception

Se estiver presente, um erro que causou o término do fluxo de trabalho.

timeout
TimeSpan

O intervalo de tempo durante o qual a operação assíncrona deve ser concluída.

callback
AsyncCallback

O local em um aplicativo para o qual o controle retorna quando a operação assíncrona é concluída.

state
Object

Estado definido pelo usuário.

Retornos

IAsyncResult

O status da operação assíncrona.

Exemplos

O exemplo a seguir mostra como implementar o OnBeginWorkflowCompleted método.

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);
}

Aplica-se a