Aracılığıyla paylaş


WorkflowCreationContext.OnBeginWorkflowCompleted Yöntem

Tanım

İş akışı örneği tamamlama bildirimini gerçekleştirmek için zaman uyumsuz bir işlem başlatır. Bu yöntem, bu yöntemle WorkflowCreationContext ilişkilendirilmiş iş akışı örneği tamamlandığında çağrılır. Türetilmiş sınıflar, iş akışı örneği tamamlandığında özel eylemler gerçekleştirmek için bu işlemi geçersiz kılabilir.

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

Parametreler

completionState
ActivityInstanceState

İş akışı örneğinin durumu.

workflowOutputs
IDictionary<String,Object>

İş akışı örneği tarafından oluşturulan çıkışı içeren anahtar/değer çiftleri koleksiyonu.

terminationException
Exception

Varsa, iş akışının sonlandırmasına neden olan bir hata.

timeout
TimeSpan

Zaman uyumsuz işlemin tamamlanması gereken zaman aralığı.

callback
AsyncCallback

Bir uygulamadaki zaman uyumsuz işlem tamamlandığında denetimin döndürdüğü konum.

state
Object

Kullanıcı tanımlı durum.

Döndürülenler

IAsyncResult

Zaman uyumsuz işlemin durumu.

Örnekler

Aşağıdaki örnekte yönteminin nasıl uygulandığı gösterilmektedir 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);
}

Şunlara uygulanır