EnlistmentOptions 列挙型

定義

準備フェーズにおいて、オブジェクトをトランザクションに参加させるかどうかを判断します。

この列挙体は、メンバー値のビットごとの組み合わせをサポートしています。

public enum class EnlistmentOptions
[System.Flags]
public enum EnlistmentOptions
[<System.Flags>]
type EnlistmentOptions = 
Public Enum EnlistmentOptions
継承
EnlistmentOptions
属性

フィールド

EnlistDuringPrepareRequired 1

コミット プロセスの初期フェーズにおいて、オブジェクトが参加する必要があります。

None 0

コミット プロセスの初期フェーズにおいて、オブジェクトが参加する必要はありません。

注釈

この列挙体は、 メソッドと EnlistDurable メソッドにEnlistVolatile渡され、準備フェーズ中にリソース マネージャーが別の参加リストを作成する必要があるかどうかをトランザクション マネージャーに通知します。 参加の詳細については、「 トランザクションにリソースを参加者として参加させる」を参照してください。

参加中に EnlistDuringPrepareRequired が指定されている場合、リソース マネージャーは、トランザクションに対して新しい参加が引き続き許可されている間に準備通知を受け取ることを示します。 バックエンド データベースなどの別の永続リソースのキャッシュとして機能するリソース マネージャーは、参加中にこのオプションを使用する可能性があります。 キャッシュ リソースは、その準備通知を受け取ると、そのコンテンツを永続リソースに転送します。 これにより、永続リソースがトランザクションに参加し、2 フェーズ コミット (2PC) プロトコルの参加要素になります。 これが発生する前に、キャッシュ リソース (永続リソースではなく) のみが参加していました。

None が指定されている場合、参加リストは、2PC で新しい参加リストを作成するのが遅すぎるまで、準備通知を受け取らないことを示します。 上記のシナリオでは、キャッシュ リソースが参加中にこのオプションを指定し、準備通知中にそのキャッシュをフラッシュしようとすると、永続リソースは、参加を試みるときに例外を受け取ります。

既定値として使用する必要はありません。

適用対象