次の方法で共有


CommitFailureHandler クラス

[このページは、Entity Framework 6 に関するページです。最新バージョンは、'Entity Framework' NuGet パッケージとして入手できます。Entity Framework の詳細については、msdn.com/data/ef を参照してください。]

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

継承階層

System.Object
  System.Data.Entity.Infrastructure.TransactionHandler
    System.Data.Entity.Infrastructure.CommitFailureHandler

名前空間:  System.Data.Entity.Infrastructure
アセンブリ:  EntityFramework (EntityFramework.dll 内)

構文

'宣言
Public Class CommitFailureHandler _
    Inherits TransactionHandler
'使用
Dim instance As CommitFailureHandler
public class CommitFailureHandler : TransactionHandler
public ref class CommitFailureHandler : public TransactionHandler
type CommitFailureHandler =  
    class 
        inherit TransactionHandler 
    end
public class CommitFailureHandler extends TransactionHandler

CommitFailureHandler 型で公開されるメンバーは以下のとおりです。

コンストラクター

  名前 説明
パブリック メソッド CommitFailureHandler() 既定の TransactionContext を使用して CommitFailureHandler クラスの新しいインスタンスを初期化します。
パブリック メソッド CommitFailureHandler(Func<DbConnection, TransactionContext>) CommitFailureHandler クラスの新しいインスタンスを初期化します。

上揃え

プロパティ

  名前 説明
パブリック プロパティ Connection トランザクション操作が処理される接続を取得します。 (TransactionHandler から継承されます。)
パブリック プロパティ DbContext トランザクション操作が処理されるコンテキストを取得します。 (TransactionHandler から継承されます。)
プロテクト プロパティ IsDisposed このトランザクション ハンドラーが破棄されているかどうかを示す値を取得または設定します。 (TransactionHandler から継承されます。)
パブリック プロパティ ObjectContext トランザクション操作が処理されるコンテキストを取得します。 (TransactionHandler から継承されます。)
プロテクト プロパティ PruningLimit トランザクション ログの消去前のコンテキストで実行されるトランザクションの数を取得します。既定値は 20 です。
プロテクト プロパティ TransactionContext トランザクションのコンテキストを取得します。

上揃え

メソッド

  名前 説明
パブリック メソッド BeganTransaction 同じトランザクションで新しいトランザクションの追跡情報をデータベースに保存します。 (TransactionHandler.BeganTransaction(DbConnection, BeginTransactionInterceptionContext) をオーバーライドします。)
パブリック メソッド BeginningTransaction 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド BuildDatabaseInitializationScript データベース初期化スクリプトを構築します。 (TransactionHandler.BuildDatabaseInitializationScript() をオーバーライドします。)
パブリック メソッド ClearTransactionHistory すべてのトランザクション履歴を削除します。
パブリック メソッド ClearTransactionHistoryAsync() すべてのトランザクション履歴を非同期に削除します。
パブリック メソッド ClearTransactionHistoryAsync(CancellationToken) すべてのトランザクション履歴を非同期に削除します。
パブリック メソッド Closed 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド Closing 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド Committed 例外がスローされた場合、データベースにこのトランザクションがあるかどうかを確認し、見つからないときは例外をもう一度スローします。それ以外の場合は、コミットを成功としてマークし、削除するトランザクション情報をキューに入れます。 (TransactionHandler.Committed(DbTransaction, DbTransactionInterceptionContext) をオーバーライドします。)
パブリック メソッド Committing 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド ConnectionGetting 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド ConnectionGot 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド ConnectionStringGetting 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド ConnectionStringGot 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド ConnectionStringSet 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド ConnectionStringSetting 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド ConnectionTimeoutGetting 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド ConnectionTimeoutGot 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド DatabaseGetting 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド DatabaseGot 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド DataSourceGetting 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド DataSourceGot 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド Dispose() このトランザクション ハンドラーによって使用されているリソースを解放します。 (TransactionHandler から継承されます。)
プロテクト メソッド Dispose(Boolean) このトランザクション オブジェクトが使用しているリソースを解放します。 (TransactionHandler.Dispose(Boolean) をオーバーライドします。)
パブリック メソッド Disposed(DbTransaction, DbTransactionInterceptionContext) 破棄されたトランザクションの追跡を停止します。 (TransactionHandler.Disposed(DbTransaction, DbTransactionInterceptionContext) をオーバーライドします。)
パブリック メソッド Disposed(DbConnection, DbConnectionInterceptionContext) 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド Disposing(DbConnection, DbConnectionInterceptionContext) 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド Disposing(DbTransaction, DbTransactionInterceptionContext) 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド EnlistedTransaction 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド EnlistingTransaction 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド Equals (Object から継承されます。)
プロテクト メソッド Finalize (Object から継承されます。)
パブリック メソッド静的メンバー FromContext(DbContext) context に関連付けられた CommitFailureHandler がある場合はそれを取得します。それ以外の場合は null を返します。
パブリック メソッド静的メンバー FromContext(ObjectContext) context に関連付けられた CommitFailureHandler がある場合はそれを取得します。それ以外の場合は null を返します。
パブリック メソッド GetHashCode (Object から継承されます。)
パブリック メソッド GetType (Object から継承されます。)
パブリック メソッド Initialize(ObjectContext) インスタンスのプロパティを初期化します。 (TransactionHandler.Initialize(ObjectContext) をオーバーライドします。)
パブリック メソッド Initialize(DbContext, DbConnection) インスタンスのプロパティを初期化します。 (TransactionHandler.Initialize(DbContext, DbConnection) をオーバーライドします。)
パブリック メソッド IsolationLevelGetting 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド IsolationLevelGot 派生クラスに実装できます。 (TransactionHandler から継承されます。)
プロテクト メソッド MarkTransactionForPruning データベースから削除できるトランザクションのリストに指定したトランザクションを追加します。
プロテクト メソッド MatchesParentContext 渡された傍受のコンテキストにターゲット コンテキストが含まれているかどうか、または渡された接続がターゲット コンテキストで使用されたものと同じであるかどうかを確認します。 (TransactionHandler から継承されます。)
プロテクト メソッド MemberwiseClone (Object から継承されます。)
パブリック メソッド Opened 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド Opening 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド PruneTransactionHistory() 削除対象としてマークされたトランザクションを削除します。
プロテクト メソッド PruneTransactionHistory(Boolean, Boolean) 削除対象としてマークされたトランザクションの数が PruningLimit を超えている場合は、それらのトランザクションを削除します。
パブリック メソッド PruneTransactionHistoryAsync() 削除対象としてマークされたトランザクションを非同期に削除します。
パブリック メソッド PruneTransactionHistoryAsync(CancellationToken) 削除対象としてマークされたトランザクションを非同期に削除します。
プロテクト メソッド PruneTransactionHistoryAsync(Boolean, Boolean, CancellationToken) 削除対象としてマークされたトランザクションの数が PruningLimit を超えている場合は、それらのトランザクションを削除します。
パブリック メソッド RolledBack ロールバックされたトランザクションの追跡を停止します。 (TransactionHandler.RolledBack(DbTransaction, DbTransactionInterceptionContext) をオーバーライドします。)
パブリック メソッド RollingBack 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド ServerVersionGetting 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド ServerVersionGot 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド StateGetting 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド StateGot 派生クラスに実装できます。 (TransactionHandler から継承されます。)
パブリック メソッド ToString (Object から継承されます。)

上揃え

解説

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

スレッド セーフ

この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

参照

参照

System.Data.Entity.Infrastructure 名前空間