Bagikan melalui


IDbCommandInterceptor Antarmuka

Definisi

Memungkinkan penyadapan perintah yang dikirim ke database relasional.

public interface IDbCommandInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
type IDbCommandInterceptor = interface
    interface IInterceptor
Public Interface IDbCommandInterceptor
Implements IInterceptor
Turunan
Penerapan

Keterangan

Pencegat perintah dapat digunakan untuk melihat, mengubah, atau menekan eksekusi DbCommand, dan untuk memodifikasi hasilnya sebelum dikembalikan ke EF.

Pertimbangkan untuk mewarisi dari DbCommandInterceptor jika tidak menerapkan semua metode.

Gunakan AddInterceptors(IInterceptor[]) untuk mendaftarkan pencegat aplikasi.

Ekstensi juga dapat mendaftarkan pencegat di penyedia layanan internal. Jika kedua pencegat disuntikkan dan aplikasi ditemukan, maka pencegat yang disuntikkan dijalankan dalam urutan bahwa mereka diselesaikan dari penyedia layanan, dan kemudian pencegat aplikasi dijalankan terakhir.

Lihat Pencegat EF Core untuk informasi dan contoh selengkapnya.

Metode

CommandCanceled(DbCommand, CommandEndEventData)

Dipanggil ketika perintah dibatalkan.

CommandCanceledAsync(DbCommand, CommandEndEventData, CancellationToken)

Dipanggil ketika perintah dibatalkan.

CommandCreated(CommandEndEventData, DbCommand)

Dipanggil segera setelah EF memanggil CreateCommand().

CommandCreating(CommandCorrelatedEventData, InterceptionResult<DbCommand>)

Dipanggil tepat sebelum EF berniat untuk memanggil CreateCommand().

CommandFailed(DbCommand, CommandErrorEventData)

Dipanggil ketika eksekusi perintah gagal dengan pengecualian.

CommandFailedAsync(DbCommand, CommandErrorEventData, CancellationToken)

Dipanggil ketika eksekusi perintah gagal dengan pengecualian.

CommandInitialized(CommandEndEventData, DbCommand)

Dipanggil setelah EF diinisialisasi CommandText dan konfigurasi perintah lainnya.

DataReaderClosing(DbCommand, DataReaderClosingEventData, InterceptionResult)

Dipanggil tepat sebelum EF berniat untuk memanggil Close().

DataReaderClosingAsync(DbCommand, DataReaderClosingEventData, InterceptionResult)

Dipanggil tepat sebelum EF berniat untuk memanggil CloseAsync() dalam konteks asinkron.

DataReaderDisposing(DbCommand, DataReaderDisposingEventData, InterceptionResult)

Dipanggil ketika eksekusi a DbDataReader akan dibuang.

NonQueryExecuted(DbCommand, CommandExecutedEventData, Int32)

Dipanggil segera setelah EF memanggil ExecuteNonQuery().

NonQueryExecutedAsync(DbCommand, CommandExecutedEventData, Int32, CancellationToken)

Dipanggil segera setelah EF memanggil ExecuteNonQueryAsync().

NonQueryExecuting(DbCommand, CommandEventData, InterceptionResult<Int32>)

Dipanggil tepat sebelum EF berniat untuk memanggil ExecuteNonQuery().

NonQueryExecutingAsync(DbCommand, CommandEventData, InterceptionResult<Int32>, CancellationToken)

Dipanggil tepat sebelum EF berniat untuk memanggil ExecuteNonQueryAsync().

ReaderExecuted(DbCommand, CommandExecutedEventData, DbDataReader)

Dipanggil segera setelah EF memanggil ExecuteReader().

ReaderExecutedAsync(DbCommand, CommandExecutedEventData, DbDataReader, CancellationToken)

Dipanggil segera setelah EF memanggil ExecuteReaderAsync().

ReaderExecuting(DbCommand, CommandEventData, InterceptionResult<DbDataReader>)

Dipanggil tepat sebelum EF berniat untuk memanggil ExecuteReader().

ReaderExecutingAsync(DbCommand, CommandEventData, InterceptionResult<DbDataReader>, CancellationToken)

Dipanggil tepat sebelum EF berniat untuk memanggil ExecuteReaderAsync().

ScalarExecuted(DbCommand, CommandExecutedEventData, Object)

Dipanggil segera setelah EF memanggil ExecuteScalar().

ScalarExecutedAsync(DbCommand, CommandExecutedEventData, Object, CancellationToken)

Dipanggil segera setelah EF memanggil ExecuteScalarAsync().

ScalarExecuting(DbCommand, CommandEventData, InterceptionResult<Object>)

Dipanggil tepat sebelum EF berniat untuk memanggil ExecuteScalar().

ScalarExecutingAsync(DbCommand, CommandEventData, InterceptionResult<Object>, CancellationToken)

Dipanggil tepat sebelum EF berniat untuk memanggil ExecuteScalarAsync().

Berlaku untuk