语言

DbTransactionInterceptor 类

定义

实现接口方法子集时要使用的 IDbTransactionInterceptor 抽象基类。

[System.Runtime.CompilerServices.Nullable(0)]
public abstract class DbTransactionInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IDbTransactionInterceptor, Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
public abstract class DbTransactionInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IDbTransactionInterceptor, Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
[<System.Runtime.CompilerServices.Nullable(0)>]
type DbTransactionInterceptor = class
    interface IDbTransactionInterceptor
    interface IInterceptor
type DbTransactionInterceptor = class
    interface IDbTransactionInterceptor
    interface IInterceptor
Public MustInherit Class DbTransactionInterceptor
Implements IDbTransactionInterceptor, IInterceptor
继承
DbTransactionInterceptor
特性
实现

注解

有关详细信息和示例,请参阅 EF Core 拦截器 。

构造函数

名称 说明
DbTransactionInterceptor()

实现接口方法子集时要使用的 IDbTransactionInterceptor 抽象基类。

方法

名称 说明
CreatedSavepoint(DbTransaction, TransactionEventData)

在 EF 创建事务保存点后立即调用。

CreatedSavepointAsync(DbTransaction, TransactionEventData, CancellationToken)

在 EF 调用后立即调用 CommitAsync(CancellationToken)。

CreatingSavepoint(DbTransaction, TransactionEventData, InterceptionResult)

在 EF 打算创建事务保存点之前调用。

CreatingSavepointAsync(DbTransaction, TransactionEventData, InterceptionResult, CancellationToken)

在 EF 打算创建事务保存点之前调用。

ReleasedSavepoint(DbTransaction, TransactionEventData)

在 EF 释放事务保存点后立即调用。

ReleasedSavepointAsync(DbTransaction, TransactionEventData, CancellationToken)

在 EF 释放事务保存点后立即调用。

ReleasingSavepoint(DbTransaction, TransactionEventData, InterceptionResult)

在 EF 打算释放事务保存点之前调用。

ReleasingSavepointAsync(DbTransaction, TransactionEventData, InterceptionResult, CancellationToken)

在 EF 打算释放事务保存点之前调用。

RolledBackToSavepoint(DbTransaction, TransactionEventData)

在 EF 回滚到事务保存点后立即调用。

RolledBackToSavepointAsync(DbTransaction, TransactionEventData, CancellationToken)

在 EF 回滚到事务保存点后立即调用。

RollingBackToSavepoint(DbTransaction, TransactionEventData, InterceptionResult)

在 EF 打算回滚到事务保存点之前调用。

RollingBackToSavepointAsync(DbTransaction, TransactionEventData, InterceptionResult, CancellationToken)

在 EF 打算回滚到事务保存点之前调用。

TransactionCommitted(DbTransaction, TransactionEndEventData)

在 EF 调用后立即调用 Commit()。

TransactionCommittedAsync(DbTransaction, TransactionEndEventData, CancellationToken)

在 EF 调用后立即调用 CommitAsync(CancellationToken)。

TransactionCommitting(DbTransaction, TransactionEventData, InterceptionResult)

在 EF 打算调用之前调用 Commit()。

TransactionCommittingAsync(DbTransaction, TransactionEventData, InterceptionResult, CancellationToken)

在 EF 打算调用之前调用 CommitAsync(CancellationToken)。

TransactionFailed(DbTransaction, TransactionErrorEventData)

当使用 DbTransaction 某个异常失败时调用。

TransactionFailedAsync(DbTransaction, TransactionErrorEventData, CancellationToken)

当使用 DbTransaction 某个异常失败时调用。

TransactionRolledBack(DbTransaction, TransactionEndEventData)

在 EF 调用后立即调用 Rollback()。

TransactionRolledBackAsync(DbTransaction, TransactionEndEventData, CancellationToken)

在 EF 调用后立即调用 RollbackAsync(CancellationToken)。

TransactionRollingBack(DbTransaction, TransactionEventData, InterceptionResult)

在 EF 打算调用之前调用 Rollback()。

TransactionRollingBackAsync(DbTransaction, TransactionEventData, InterceptionResult, CancellationToken)

在 EF 打算调用之前调用 RollbackAsync(CancellationToken)。

TransactionStarted(DbConnection, TransactionEndEventData, DbTransaction)

在 EF 调用后立即调用 BeginTransaction(IsolationLevel)。

如果侦听器取消创建, TransactionStarting(DbConnection, TransactionStartingEventData, InterceptionResult<DbTransaction>)此方法仍会调用。 在本例中,result返回的结果是 。TransactionStarting(DbConnection, TransactionStartingEventData, InterceptionResult<DbTransaction>)

TransactionStartedAsync(DbConnection, TransactionEndEventData, DbTransaction, CancellationToken)

在 EF 调用后立即调用 BeginTransactionAsync(IsolationLevel, CancellationToken) 。

如果侦听器取消创建, TransactionStarting(DbConnection, TransactionStartingEventData, InterceptionResult<DbTransaction>)此方法仍会调用。 在本例中,result返回的结果是 。TransactionStarting(DbConnection, TransactionStartingEventData, InterceptionResult<DbTransaction>)

TransactionStarting(DbConnection, TransactionStartingEventData, InterceptionResult<DbTransaction>)

在 EF 打算调用之前调用 BeginTransaction(IsolationLevel)。

TransactionStartingAsync(DbConnection, TransactionStartingEventData, InterceptionResult<DbTransaction>, CancellationToken)

在 EF 打算调用之前调用 BeginTransactionAsync(IsolationLevel, CancellationToken)。

TransactionUsed(DbConnection, TransactionEventData, DbTransaction)

调用后 RelationalDatabaseFacadeExtensions.UseTransaction 立即调用。

TransactionUsedAsync(DbConnection, TransactionEventData, DbTransaction, CancellationToken)

调用后 RelationalDatabaseFacadeExtensions.UseTransactionAsync 立即调用。

适用于