IDbCommandInterceptor Arabirim

Tanım

İlişkisel bir veritabanına gönderilen komutların ele geçirilmesini sağlar.

Komut yakalayıcılar, ' nin yürütülmesini, değiştirilmesini veya yürütülmesini bastırmak DbCommand ve EF 'e döndürülmeden önce sonucu değiştirmek için kullanılabilir.

Tüm yöntemleri uygulamadıysanız öğesinden devralmayı göz önünde bulundurun DbCommandInterceptor .

AddInterceptors(IInterceptor[])Uygulama yakalayıcılar kaydetmek için kullanın.

Uzantılar, iç hizmet sağlayıcısına aynı zamanda kayıt yaptırıcılar de kaydedebilir. Hem eklenen hem de uygulama yakalayıcılar bulunursa, eklenen yakalayıcılar hizmet sağlayıcısından çözümlendikleri sırada çalıştırılır ve sonra uygulama yakalayıcılar en son çalıştırılır.

public interface IDbCommandInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
type IDbCommandInterceptor = interface
    interface IInterceptor
Public Interface IDbCommandInterceptor
Implements IInterceptor
Türetilmiş
Uygulamalar

Açıklamalar

Daha fazla bilgi için bkz. EF Core dinleyici .

Yöntemler

CommandCreated(CommandEndEventData, DbCommand)

EF çağrılarından hemen sonra çağırılır CreateCommand() .

Bu yöntem, bir yakalayıcıyı ' de bir komutun oluşturulmasını gizlemediği takdirde çağrılır CommandCreating(CommandCorrelatedEventData, InterceptionResult<DbCommand>) . Bu durumda, result sonucu tarafından döndürülür CommandCreating(CommandCorrelatedEventData, InterceptionResult<DbCommand>) .

CommandCreating(CommandCorrelatedEventData, InterceptionResult<DbCommand>)

EF 'in çağrılması için yeterlidir CreateCommand() .

CommandFailed(DbCommand, CommandErrorEventData)

Bir komutun yürütülmesi bir özel durumla başarısız olduğunda çağırılır.

CommandFailedAsync(DbCommand, CommandErrorEventData, CancellationToken)

Bir komutun yürütülmesi bir özel durumla başarısız olduğunda çağırılır.

DataReaderDisposing(DbCommand, DataReaderDisposingEventData, InterceptionResult)

Öğesinin yürütülmesi DbDataReader için olduğu zaman çağrılır.

NonQueryExecuted(DbCommand, CommandExecutedEventData, Int32)

EF çağrılarından hemen sonra çağırılır ExecuteNonQuery() .

Bu yöntem, bir yakalayıcıyı ' de bir komutun yürütülmesini gizlemediği takdirde çağrılır NonQueryExecuting(DbCommand, CommandEventData, InterceptionResult<Int32>) . Bu durumda, result sonucu tarafından döndürülür NonQueryExecuting(DbCommand, CommandEventData, InterceptionResult<Int32>) .

NonQueryExecutedAsync(DbCommand, CommandExecutedEventData, Int32, CancellationToken)

EF çağrılarından hemen sonra çağırılır ExecuteNonQueryAsync() .

Bu yöntem, bir yakalayıcıyı ' de bir komutun yürütülmesini gizlemediği takdirde çağrılır NonQueryExecutingAsync(DbCommand, CommandEventData, InterceptionResult<Int32>, CancellationToken) . Bu durumda, result sonucu tarafından döndürülür NonQueryExecutingAsync(DbCommand, CommandEventData, InterceptionResult<Int32>, CancellationToken) .

NonQueryExecuting(DbCommand, CommandEventData, InterceptionResult<Int32>)

EF 'in çağrılması için yeterlidir ExecuteNonQuery() .

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

EF 'in çağrılması için yeterlidir ExecuteNonQueryAsync() .

ReaderExecuted(DbCommand, CommandExecutedEventData, DbDataReader)

EF çağrılarından hemen sonra çağırılır ExecuteReader() .

Bu yöntem, bir yakalayıcıyı ' de bir komutun yürütülmesini gizlemediği takdirde çağrılır ReaderExecuting(DbCommand, CommandEventData, InterceptionResult<DbDataReader>) . Bu durumda, result sonucu tarafından döndürülür ReaderExecuting(DbCommand, CommandEventData, InterceptionResult<DbDataReader>) .

ReaderExecutedAsync(DbCommand, CommandExecutedEventData, DbDataReader, CancellationToken)

EF çağrılarından hemen sonra çağırılır ExecuteReaderAsync() .

Bu yöntem, bir yakalayıcıyı ' de bir komutun yürütülmesini gizlemediği takdirde çağrılır ReaderExecutingAsync(DbCommand, CommandEventData, InterceptionResult<DbDataReader>, CancellationToken) . Bu durumda, result sonucu tarafından döndürülür ReaderExecutingAsync(DbCommand, CommandEventData, InterceptionResult<DbDataReader>, CancellationToken) .

ReaderExecuting(DbCommand, CommandEventData, InterceptionResult<DbDataReader>)

EF 'in çağrılması için yeterlidir ExecuteReader() .

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

EF 'in çağrılması için yeterlidir ExecuteReaderAsync() .

ScalarExecuted(DbCommand, CommandExecutedEventData, Object)

EF çağrılarından hemen sonra çağırılır ExecuteScalar() .

Bu yöntem, bir yakalayıcıyı ' de bir komutun yürütülmesini gizlemediği takdirde çağrılır ScalarExecuting(DbCommand, CommandEventData, InterceptionResult<Object>) . Bu durumda, result sonucu tarafından döndürülür ScalarExecuting(DbCommand, CommandEventData, InterceptionResult<Object>) .

ScalarExecutedAsync(DbCommand, CommandExecutedEventData, Object, CancellationToken)

EF çağrılarından hemen sonra çağırılır ExecuteScalarAsync() .

Bu yöntem, bir yakalayıcıyı ' de bir komutun yürütülmesini gizlemediği takdirde çağrılır ScalarExecutingAsync(DbCommand, CommandEventData, InterceptionResult<Object>, CancellationToken) . Bu durumda, result sonucu tarafından döndürülür ScalarExecutingAsync(DbCommand, CommandEventData, InterceptionResult<Object>, CancellationToken) .

ScalarExecuting(DbCommand, CommandEventData, InterceptionResult<Object>)

EF 'in çağrılması için yeterlidir ExecuteScalar() .

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

EF 'in çağrılması için yeterlidir ExecuteScalarAsync() .

Şunlara uygulanır