語言

DbCommandInterceptor 類別

定義

抽象基底類別,用於 IDbCommandInterceptor 實作介面方法的子集。

[System.Runtime.CompilerServices.Nullable(0)]
public abstract class DbCommandInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IDbCommandInterceptor, Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
public abstract class DbCommandInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IDbCommandInterceptor, Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
[<System.Runtime.CompilerServices.Nullable(0)>]
type DbCommandInterceptor = class
    interface IDbCommandInterceptor
    interface IInterceptor
type DbCommandInterceptor = class
    interface IDbCommandInterceptor
    interface IInterceptor
Public MustInherit Class DbCommandInterceptor
Implements IDbCommandInterceptor, IInterceptor
繼承
DbCommandInterceptor
屬性
實作

備註

更多資訊與範例請參閱 EF Core 攔截器 。

建構函式

名稱 Description
DbCommandInterceptor()

抽象基底類別,用於 IDbCommandInterceptor 實作介面方法的子集。

方法

名稱 Description
CommandCanceled(DbCommand, CommandEndEventData)

當命令被取消時會打電話。

CommandCanceledAsync(DbCommand, CommandEndEventData, CancellationToken)

當命令被取消時會打電話。

CommandCreated(CommandEndEventData, DbCommand)

EF打電話 CreateCommand()後立刻打電話。

即使攔截器抑制了在 中 CommandCreating(CommandCorrelatedEventData, InterceptionResult<DbCommand>)建立指令,仍會呼叫此方法。 此時, result 是由 CommandCreating(CommandCorrelatedEventData, InterceptionResult<DbCommand>)返回的結果。

CommandCreating(CommandCorrelatedEventData, InterceptionResult<DbCommand>)

在 EF 準備打電話 CreateCommand()之前打了電話。

CommandFailed(DbCommand, CommandErrorEventData)

當指令執行失敗且有例外時呼叫。

CommandFailedAsync(DbCommand, CommandErrorEventData, CancellationToken)

當指令執行失敗且有例外時呼叫。

CommandInitialized(CommandEndEventData, DbCommand)

在 EF 初始化 CommandText 及其他指令設定後呼叫。

DataReaderClosing(DbCommand, DataReaderClosingEventData, InterceptionResult)

在 EF 準備打電話 Close()之前打了電話。

DataReaderClosingAsync(DbCommand, DataReaderClosingEventData, InterceptionResult)

在 EF 打算在非同步情境呼叫 CloseAsync() 之前被呼叫。

DataReaderDisposing(DbCommand, DataReaderDisposingEventData, InterceptionResult)

當執行 a DbDataReader 即將被處置時被召喚。

NonQueryExecuted(DbCommand, CommandExecutedEventData, Int32)

EF打電話 ExecuteNonQuery()後立刻打電話。

即使攔截器抑制了在 中的 NonQueryExecuting(DbCommand, CommandEventData, InterceptionResult<Int32>)指令執行,此方法仍會被呼叫。 此時, result 是由 NonQueryExecuting(DbCommand, CommandEventData, InterceptionResult<Int32>)返回的結果。

NonQueryExecutedAsync(DbCommand, CommandExecutedEventData, Int32, CancellationToken)

EF打電話 ExecuteNonQueryAsync()後立刻打電話。

即使攔截器抑制了在 中的 NonQueryExecutingAsync(DbCommand, CommandEventData, InterceptionResult<Int32>, CancellationToken)指令執行,此方法仍會被呼叫。 此時, result 是由 NonQueryExecutingAsync(DbCommand, CommandEventData, InterceptionResult<Int32>, CancellationToken)返回的結果。

NonQueryExecuting(DbCommand, CommandEventData, InterceptionResult<Int32>)

在 EF 準備打電話 ExecuteNonQuery()之前打了電話。

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

在 EF 準備打電話 ExecuteNonQueryAsync()之前打了電話。

ReaderExecuted(DbCommand, CommandExecutedEventData, DbDataReader)

EF打電話 ExecuteReader()後立刻打電話。

即使攔截器抑制了在 中的 ReaderExecuting(DbCommand, CommandEventData, InterceptionResult<DbDataReader>)指令執行,此方法仍會被呼叫。 此時, result 是由 ReaderExecuting(DbCommand, CommandEventData, InterceptionResult<DbDataReader>)返回的結果。

ReaderExecutedAsync(DbCommand, CommandExecutedEventData, DbDataReader, CancellationToken)

EF打電話 ExecuteReaderAsync()後立刻打電話。

即使攔截器抑制了在 中的 ReaderExecutingAsync(DbCommand, CommandEventData, InterceptionResult<DbDataReader>, CancellationToken)指令執行,此方法仍會被呼叫。 此時, result 是由 ReaderExecutingAsync(DbCommand, CommandEventData, InterceptionResult<DbDataReader>, CancellationToken)返回的結果。

ReaderExecuting(DbCommand, CommandEventData, InterceptionResult<DbDataReader>)

在 EF 準備打電話 ExecuteReader()之前打了電話。

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

在 EF 準備打電話 ExecuteReaderAsync()之前打了電話。

ScalarExecuted(DbCommand, CommandExecutedEventData, Object)

EF打電話 ExecuteScalar()後立刻打電話。

即使攔截器抑制了在 中的 ScalarExecuting(DbCommand, CommandEventData, InterceptionResult<Object>)指令執行,此方法仍會被呼叫。 此時, result 是由 ScalarExecuting(DbCommand, CommandEventData, InterceptionResult<Object>)返回的結果。

ScalarExecutedAsync(DbCommand, CommandExecutedEventData, Object, CancellationToken)

EF打電話 ExecuteScalarAsync()後立刻打電話。

即使攔截器抑制了在 中的 ScalarExecutingAsync(DbCommand, CommandEventData, InterceptionResult<Object>, CancellationToken)指令執行,此方法仍會被呼叫。 此時, result 是由 ScalarExecutingAsync(DbCommand, CommandEventData, InterceptionResult<Object>, CancellationToken)返回的結果。

ScalarExecuting(DbCommand, CommandEventData, InterceptionResult<Object>)

在 EF 準備打電話 ExecuteScalar()之前打了電話。

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

在 EF 準備打電話 ExecuteScalarAsync()之前打了電話。

適用於