IDbTransactionInterceptor Интерфейс

Определение

Разрешает перехват операций, связанных с .DbTransaction

Перехватчики транзакций можно использовать для просмотра, изменения или подавления операций с DbTransaction, а также для изменения результата перед возвратом в EF.

Рекомендуется наследовать от DbTransactionInterceptor , если не реализовать все методы.

Используется AddInterceptors(IInterceptor[]) для регистрации перехватчиков приложений.

Расширения также могут регистрировать перехватчики во внутреннем поставщике услуг. Если обнаружены как внедренные, так и перехватчики приложений, то внедренные перехватчики выполняются в том порядке, в который они разрешаются от поставщика услуг, а затем перехватчики приложений выполняются последним.

public interface IDbTransactionInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
type IDbTransactionInterceptor = interface
    interface IInterceptor
Public Interface IDbTransactionInterceptor
Implements IInterceptor
Производный
Реализации

Комментарии

Дополнительные сведения см. в описании перехватчиков EF Core .

Методы

CreatedSavepoint(DbTransaction, TransactionEventData)

Вызывается сразу после того, как EF создает точку сохранения транзакций.

CreatedSavepointAsync(DbTransaction, TransactionEventData, CancellationToken)

Вызывается сразу после вызовов CommitAsync(CancellationToken)EF.

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)

Вызывается сразу после вызовов Commit()EF.

TransactionCommittedAsync(DbTransaction, TransactionEndEventData, CancellationToken)

Вызывается сразу после вызовов CommitAsync(CancellationToken)EF.

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)

Вызывается сразу после вызовов Rollback()EF.

TransactionRolledBackAsync(DbTransaction, TransactionEndEventData, CancellationToken)

Вызывается сразу после вызовов RollbackAsync(CancellationToken)EF.

TransactionRollingBack(DbTransaction, TransactionEventData, InterceptionResult)

Вызывается незадолго до того, как EF намерена позвонить Rollback().

TransactionRollingBackAsync(DbTransaction, TransactionEventData, InterceptionResult, CancellationToken)

Вызывается незадолго до того, как EF намерена позвонить RollbackAsync(CancellationToken).

TransactionStarted(DbConnection, TransactionEndEventData, DbTransaction)

Вызывается сразу после вызовов BeginTransaction(IsolationLevel)EF.

Этот метод по-прежнему вызывается, если перехватчик подавлял создание в TransactionStarting(DbConnection, TransactionStartingEventData, InterceptionResult<DbTransaction>). В этом случае result возвращается TransactionStarting(DbConnection, TransactionStartingEventData, InterceptionResult<DbTransaction>)результат .

TransactionStartedAsync(DbConnection, TransactionEndEventData, DbTransaction, CancellationToken)

Вызывается сразу после вызовов BeginTransactionAsync(IsolationLevel, CancellationToken) EF.

Этот метод по-прежнему вызывается, если перехватчик подавлял создание в 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 вызова.

Применяется к