WorkflowCreationContext.OnBeginWorkflowCompleted メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ワークフロー インスタンスの完了を通知する非同期操作を開始します。 このメソッドは、この 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);
}