WorkflowCreationContext.OnBeginWorkflowCompleted Метод

Определение

Начинает асинхронную операцию для выполнения уведомления о завершении экземпляра рабочего процесса. Этот метод вызывается, когда экземпляр рабочего процесса, связанный с этим процессом, завершается WorkflowCreationContext . Производные классы могут переопределить эту операцию для выполнения пользовательских действий при завершении экземпляра рабочего процесса.

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

Параметры

completionState
ActivityInstanceState

Состояние экземпляра рабочего процесса.

workflowOutputs
IDictionary<String,Object>

Коллекция пар "ключ-значение", содержащих выходные данные, созданные экземпляром рабочего процесса.

terminationException
Exception

При наличии ошибки, вызвавшей завершение рабочего процесса.

timeout
TimeSpan

Интервал времени, в течение которого должна завершиться асинхронная операция.

callback
AsyncCallback

Расположение в приложении, в котором элемент управления возвращается после завершения асинхронной операции.

state
Object

Определяемое пользователем состояние.

Возвращаемое значение

Состояние асинхронной операции.

Примеры

В следующем примере показано, как реализовать 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);
}

Применяется к