次の方法で共有


CommitFailureHandler クラス

定義

トランザクション トレース情報をデータベースに格納することで、トランザクション コミット中に接続エラーから正常に復旧できるようにするトランザクション ハンドラー。 を使用 SetDefaultTransactionHandler(Func<TransactionHandler>)して登録する必要があります。

public class CommitFailureHandler : System.Data.Entity.Infrastructure.TransactionHandler
type CommitFailureHandler = class
    inherit TransactionHandler
Public Class CommitFailureHandler
Inherits TransactionHandler
継承
CommitFailureHandler

注釈

このトランザクション ハンドラーは、 を使用して、オーバーライドからTransactionContextOnModelCreating(DbModelBuilder)派生したクラスを作成し、このクラスのコンストラクターに渡すことによって、使用されるスキーマを構成できるトランザクション情報を格納するために使用TransactionContextします。

コンストラクター

CommitFailureHandler()

既定の を使用して、 クラスの CommitFailureHandler 新しいインスタンスを初期化します TransactionContext

CommitFailureHandler(Func<DbConnection,TransactionContext>)

CommitFailureHandler クラスの新しいインスタンスを初期化します。

プロパティ

Connection

接続を取得します。

(継承元 TransactionHandler)
DbContext

コンテキストを取得します。

(継承元 TransactionHandler)
IsDisposed

このトランザクション ハンドラーが破棄されるかどうかを示す値を取得または設定します。

(継承元 TransactionHandler)
ObjectContext

コンテキストを取得します。

(継承元 TransactionHandler)
PruningLimit

トランザクション ログが消去される前に、コンテキストで実行されるトランザクションの数を取得します。 既定値は 20 です。

TransactionContext

トランザクション コンテキストを取得します。

Transactions

ストア トランザクションとトランザクション追跡オブジェクトの間のマップ

メソッド

BeganTransaction(DbConnection, BeginTransactionInterceptionContext)

新しいトランザクションの追跡情報を、同じトランザクション内のデータベースに格納します。

BeginningTransaction(DbConnection, BeginTransactionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
BuildDatabaseInitializationScript()

派生クラスに実装されると、このトランザクション ハンドラー用にデータベースを準備するためのスクリプトが返されます。

ClearTransactionHistory()

すべてのトランザクション履歴を削除します。

ClearTransactionHistoryAsync()

すべてのトランザクション履歴を非同期的に削除します。

ClearTransactionHistoryAsync(CancellationToken)

すべてのトランザクション履歴を非同期的に削除します。

Closed(DbConnection, DbConnectionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
Closing(DbConnection, DbConnectionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
Committed(DbTransaction, DbTransactionInterceptionContext)

例外がスローされた場合は、データベースでこのトランザクションがチェックされ、見つからない場合は再スローされます。 それ以外の場合は、コミットを成功としてマークし、削除するトランザクション情報をキューに入れます。

Committing(DbTransaction, DbTransactionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
ConnectionGetting(DbTransaction, DbTransactionInterceptionContext<DbConnection>)

派生クラスで実装できます。

(継承元 TransactionHandler)
ConnectionGot(DbTransaction, DbTransactionInterceptionContext<DbConnection>)

派生クラスで実装できます。

(継承元 TransactionHandler)
ConnectionStringGetting(DbConnection, DbConnectionInterceptionContext<String>)

派生クラスで実装できます。

(継承元 TransactionHandler)
ConnectionStringGot(DbConnection, DbConnectionInterceptionContext<String>)

派生クラスで実装できます。

(継承元 TransactionHandler)
ConnectionStringSet(DbConnection, DbConnectionPropertyInterceptionContext<String>)

派生クラスで実装できます。

(継承元 TransactionHandler)
ConnectionStringSetting(DbConnection, DbConnectionPropertyInterceptionContext<String>)

派生クラスで実装できます。

(継承元 TransactionHandler)
ConnectionTimeoutGetting(DbConnection, DbConnectionInterceptionContext<Int32>)

派生クラスで実装できます。

(継承元 TransactionHandler)
ConnectionTimeoutGot(DbConnection, DbConnectionInterceptionContext<Int32>)

派生クラスで実装できます。

(継承元 TransactionHandler)
DatabaseGetting(DbConnection, DbConnectionInterceptionContext<String>)

派生クラスで実装できます。

(継承元 TransactionHandler)
DatabaseGot(DbConnection, DbConnectionInterceptionContext<String>)

派生クラスで実装できます。

(継承元 TransactionHandler)
DataSourceGetting(DbConnection, DbConnectionInterceptionContext<String>)

派生クラスで実装できます。

(継承元 TransactionHandler)
DataSourceGot(DbConnection, DbConnectionInterceptionContext<String>)

派生クラスで実装できます。

(継承元 TransactionHandler)
Dispose()

トランザクション トレース情報をデータベースに格納することで、トランザクション コミット中に接続エラーから正常に復旧できるようにするトランザクション ハンドラー。 を使用 SetDefaultTransactionHandler(Func<TransactionHandler>)して登録する必要があります。

(継承元 TransactionHandler)
Dispose(Boolean)

このトランザクション ハンドラーによって使用されるリソースを解放します。

Disposed(DbConnection, DbConnectionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
Disposed(DbTransaction, DbTransactionInterceptionContext)

破棄されたトランザクションの追跡を停止します。

Disposing(DbConnection, DbConnectionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
Disposing(DbTransaction, DbTransactionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
EnlistedTransaction(DbConnection, EnlistTransactionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
EnlistingTransaction(DbConnection, EnlistTransactionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
FromContext(DbContext)

が存在する CommitFailureHandler 場合は に関連付けられた を context 取得します。それ以外の場合は を返します null

FromContext(ObjectContext)

が存在する CommitFailureHandler 場合は に関連付けられた を context 取得します。それ以外の場合は を返します null

GetExecutionStrategy()

トランザクション ログのキューに使用する の IDbExecutionStrategy 新しいインスタンスを作成します。 null の場合、既定値が使用されます。

Initialize(DbContext, DbConnection)

指定したコンテキストを使用して、このインスタンスを初期化します。

Initialize(ObjectContext)

指定したコンテキストを使用して、このインスタンスを初期化します。

IsolationLevelGetting(DbTransaction, DbTransactionInterceptionContext<IsolationLevel>)

派生クラスで実装できます。

(継承元 TransactionHandler)
IsolationLevelGot(DbTransaction, DbTransactionInterceptionContext<IsolationLevel>)

派生クラスで実装できます。

(継承元 TransactionHandler)
MarkTransactionForPruning(TransactionRow)

指定したトランザクションを、データベースから削除できるトランザクションの一覧に追加します。

MatchesParentContext(DbConnection, DbInterceptionContext)

指定されたインターセプト コンテキストにターゲット コンテキストが含まれているか、指定された接続がターゲット コンテキストで使用されているものと同じかどうかを確認します。

(継承元 TransactionHandler)
Opened(DbConnection, DbConnectionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
Opening(DbConnection, DbConnectionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
PruneTransactionHistory()

削除対象としてマークされたトランザクションを削除します。

PruneTransactionHistory(Boolean, Boolean)

削除対象としてマークされたトランザクションの数が を超える場合は、削除対象としてマークされたトランザクションを削除します PruningLimit

PruneTransactionHistoryAsync()

削除対象としてマークされたトランザクションを非同期的に削除します。

PruneTransactionHistoryAsync(Boolean, Boolean, CancellationToken)

削除対象としてマークされたトランザクションの数が を超える場合は、削除対象としてマークされたトランザクションを削除します PruningLimit

PruneTransactionHistoryAsync(CancellationToken)

削除対象としてマークされたトランザクションを非同期的に削除します。

RolledBack(DbTransaction, DbTransactionInterceptionContext)

ロールバックされたトランザクションの追跡を停止します。

RollingBack(DbTransaction, DbTransactionInterceptionContext)

派生クラスで実装できます。

(継承元 TransactionHandler)
ServerVersionGetting(DbConnection, DbConnectionInterceptionContext<String>)

派生クラスで実装できます。

(継承元 TransactionHandler)
ServerVersionGot(DbConnection, DbConnectionInterceptionContext<String>)

派生クラスで実装できます。

(継承元 TransactionHandler)
StateGetting(DbConnection, DbConnectionInterceptionContext<ConnectionState>)

派生クラスで実装できます。

(継承元 TransactionHandler)
StateGot(DbConnection, DbConnectionInterceptionContext<ConnectionState>)

派生クラスで実装できます。

(継承元 TransactionHandler)

適用対象