Поделиться через


IDbConnectionInterceptor Интерфейс

Определение

Разрешает перехват операций в DbConnection.

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

Комментарии

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

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

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

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

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

Методы

ConnectionClosed(DbConnection, ConnectionEndEventData)

Вызывается сразу после вызова Close() EF в асинхронном контексте.

ConnectionClosedAsync(DbConnection, ConnectionEndEventData)

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

ConnectionClosing(DbConnection, ConnectionEventData, InterceptionResult)

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

ConnectionClosingAsync(DbConnection, ConnectionEventData, InterceptionResult)

Вызывается непосредственно перед вызовом EF CloseAsync() в асинхронном контексте.

ConnectionCreated(ConnectionCreatedEventData, DbConnection)

Вызывается сразу после того, как DbConnectionEF создает . Это событие не активируется, если приложение предоставляет подключение для использования.

ConnectionCreating(ConnectionCreatingEventData, InterceptionResult<DbConnection>)

Вызывается непосредственно перед тем, как EF создает .DbConnection Это событие не активируется, если приложение предоставляет подключение для использования.

ConnectionDisposed(DbConnection, ConnectionEndEventData)

Вызывается сразу после вызова Dispose() EF в асинхронном контексте.

ConnectionDisposedAsync(DbConnection, ConnectionEndEventData)

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

ConnectionDisposing(DbConnection, ConnectionEventData, InterceptionResult)

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

ConnectionDisposingAsync(DbConnection, ConnectionEventData, InterceptionResult)

Вызывается непосредственно перед вызовом EF DisposeAsync() в асинхронном контексте.

ConnectionFailed(DbConnection, ConnectionErrorEventData)

Вызывается при сбое закрытия соединения с исключением.

ConnectionFailedAsync(DbConnection, ConnectionErrorEventData, CancellationToken)

Вызывается при сбое закрытия соединения с исключением.

ConnectionOpened(DbConnection, ConnectionEndEventData)

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

ConnectionOpenedAsync(DbConnection, ConnectionEndEventData, CancellationToken)

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

ConnectionOpening(DbConnection, ConnectionEventData, InterceptionResult)

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

ConnectionOpeningAsync(DbConnection, ConnectionEventData, InterceptionResult, CancellationToken)

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

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