WorkflowCommitWorkBatchService クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
注意事項
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 から継承したクラスの例を次に示します。
//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() |
古い.
派生クラスでオーバーライドされると、サービスを開始して、State を Starting に変更します。 (継承元 WorkflowRuntimeService) |
Stop() |
古い.
派生クラスでオーバーライドされると、サービスを停止して State を Stopping に変更します。 (継承元 WorkflowRuntimeService) |
ToString() |
古い.
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
適用対象
.NET