WorkflowCommitWorkBatchService クラス

定義

注意事項

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

作業バッチのコミットに関するカスタム ロジックが可能になります。

public ref class WorkflowCommitWorkBatchService abstract : System::Workflow::Runtime::Hosting::WorkflowRuntimeService
public abstract class WorkflowCommitWorkBatchService : System.Workflow.Runtime.Hosting.WorkflowRuntimeService
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public abstract class WorkflowCommitWorkBatchService : System.Workflow.Runtime.Hosting.WorkflowRuntimeService
type WorkflowCommitWorkBatchService = class
    inherit WorkflowRuntimeService
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type WorkflowCommitWorkBatchService = class
    inherit WorkflowRuntimeService
Public MustInherit Class WorkflowCommitWorkBatchService
Inherits WorkflowRuntimeService
継承
WorkflowCommitWorkBatchService
派生
属性

WorkflowCommitWorkBatchService から継承したクラスの例を次に示します。

//Implementation of the abstract WorkflowCommitWorkBatchService class
class DefaultCommitWorkBatchService : WorkflowCommitWorkBatchService
{
    protected override void CommitWorkBatch(CommitWorkBatchCallback commitWorkBatchCallback)
    {
        // Call base implementation
        try
        {
            base.CommitWorkBatch(commitWorkBatchCallback);
        }
        catch (Exception e)
        {
            // Report work batch commit failures
            Console.WriteLine("Work batch failed: " + e.Message.ToString());
            throw;
        }
    }
}
'Implementation of the abstract WorkflowCommitWorkBatchService class
Class DefaultCommitWorkBatchService
    Inherits WorkflowCommitWorkBatchService

    Protected Overrides Sub CommitWorkBatch(ByVal commitWorkBatchCallback As CommitWorkBatchCallback)
        ' Call base implementation
        Try
            MyBase.CommitWorkBatch(commitWorkBatchCallback)
        Catch e As Exception
            ' Report work batch commit failures
            Console.WriteLine("Work batch failed: " + e.Message.ToString())
            Throw
        End Try
    End Sub
End Class

注釈

注意

ここでは、廃止された型と名前空間について説明します。 詳細については、「.NET 4.5 での Windows Workflow Foundation の新機能」を参照してください。

作業バッチがコミットされると、ランタイムは WorkflowCommitWorkBatchService を呼び出し、作業バッチの実際のコミットを行うために、呼び出すデリゲートを与えます。 作業バッチのコミットの中心的な役割がランタイムにあることに変わりありませんが、WorkflowCommitWorkBatchService をコミット処理周りのカスタマイズの方法に組み入れることができます。

この方法では、エラー処理のカスタム ロジックが可能です。 WorkflowCommitWorkBatchService は、トランザクションを所有している場合、つまり Transaction.Current プロパティが null を返したために新しいアンビエント トランザクションを作成する必要があった場合、デリゲートを複数回呼び出すことができ、呼び出しごとに新しいトランザクションを作成できます。 たとえば、最もよくあるケースが、接続が途切れるネットワークの問題や SQL クラスターのフェイルオーバーの処理です。 WorkflowCommitWorkBatchService.CommitWorkBatchCallback 呼び出しが例外をスローした場合、WorkflowCommitWorkBatchService がこの例外をキャッチし、新しいトランザクションを開始して、再度デリゲートを呼び出すことができます。 これによりワークフロー インスタンスの実行は回復しますが、それ以外の場合はワークフローは終了します。

コンストラクター

WorkflowCommitWorkBatchService()
古い.

派生クラスとして実装された場合、WorkflowCommitWorkBatchService クラスの新しいインスタンスを初期化します。

プロパティ

Runtime
古い.

このサービスの WorkflowRuntime を取得します。

(継承元 WorkflowRuntimeService)
State
古い.

WorkflowRuntimeService の状態を取得します。

(継承元 WorkflowRuntimeService)

メソッド

CommitWorkBatch(WorkflowCommitWorkBatchService+CommitWorkBatchCallback)
古い.

作業バッチをコミットするために呼び出されます。

Equals(Object)
古い.

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()
古い.

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()
古い.

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()
古い.

現在の Object の簡易コピーを作成します。

(継承元 Object)
OnStarted()
古い.

派生クラスでオーバーライドされるときに、ワークフロー ランタイム エンジンが Started イベントを発生させると呼び出されるメソッドを表します。

(継承元 WorkflowRuntimeService)
OnStopped()
古い.

派生クラスでオーバーライドされるときに、ワークフロー ランタイム エンジンが Stopped イベントを発生させると呼び出されるメソッドを表します。

(継承元 WorkflowRuntimeService)
RaiseServicesExceptionNotHandledEvent(Exception, Guid)
古い.

ServicesExceptionNotHandled イベントを発生させます。

(継承元 WorkflowRuntimeService)
Start()
古い.

派生クラスでオーバーライドされると、サービスを開始して、StateStarting に変更します。

(継承元 WorkflowRuntimeService)
Stop()
古い.

派生クラスでオーバーライドされると、サービスを停止して StateStopping に変更します。

(継承元 WorkflowRuntimeService)
ToString()
古い.

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

適用対象