Class CommandInterceptor
- Namespace
- LinqToDB.Interceptors
- Assembly
- linq2db.dll
public abstract class CommandInterceptor : ICommandInterceptor, IInterceptor
- Inheritance
-
CommandInterceptor
- Implements
- Extension Methods
Methods
AfterExecuteReader(CommandEventData, DbCommand, CommandBehavior, DbDataReader)
Event, triggered after command execution using ExecuteReader(CommandBehavior) or ExecuteReaderAsync(CommandBehavior, CancellationToken) methods.
public virtual void AfterExecuteReader(CommandEventData eventData, DbCommand command, CommandBehavior commandBehavior, DbDataReader dataReader)
Parameters
eventData
CommandEventDataAdditional data for event.
command
DbCommandExecuted command.
commandBehavior
CommandBehaviorBehavior, used for command execution.
dataReader
DbDataReaderDbDataReader instance, returned by ExecuteReader(CommandBehavior) or ExecuteReaderAsync(CommandBehavior, CancellationToken) methods.
BeforeReaderDispose(CommandEventData, DbCommand?, DbDataReader)
Event, triggered after all data is consumed from DbDataReader before Dispose() call.
public virtual void BeforeReaderDispose(CommandEventData eventData, DbCommand? command, DbDataReader dataReader)
Parameters
eventData
CommandEventDataAdditional data for event.
command
DbCommandExecuted command. Could be
null
.dataReader
DbDataReaderDbDataReader instance.
BeforeReaderDisposeAsync(CommandEventData, DbCommand?, DbDataReader)
Event, triggered after all data is consumed from DbDataReader before DisposeAsync
call.
public virtual Task BeforeReaderDisposeAsync(CommandEventData eventData, DbCommand? command, DbDataReader dataReader)
Parameters
eventData
CommandEventDataAdditional data for event.
command
DbCommandExecuted command. Could be
null
.dataReader
DbDataReaderDbDataReader instance.
Returns
CommandInitialized(CommandEventData, DbCommand)
Event, triggered after command prepared for execution with both command text and parameters set.
public virtual DbCommand CommandInitialized(CommandEventData eventData, DbCommand command)
Parameters
eventData
CommandEventDataAdditional data for event.
command
DbCommandInitialized command instance.
Returns
- DbCommand
Returns command instance for execution.
ExecuteNonQuery(CommandEventData, DbCommand, Option<int>)
Event, triggered before command execution using ExecuteNonQuery() method.
public virtual Option<int> ExecuteNonQuery(CommandEventData eventData, DbCommand command, Option<int> result)
Parameters
eventData
CommandEventDataAdditional data for event.
command
DbCommandCommand, prepared for execution.
result
Option<int>Value, returned by previous interceptor when multiple ICommandInterceptor instances registered or None.
Returns
- Option<int>
When event returns None, Linq To DB will execute command, otherwise it will use returned value as execution result.
ExecuteNonQueryAsync(CommandEventData, DbCommand, Option<int>, CancellationToken)
Event, triggered before command execution using ExecuteNonQueryAsync(CancellationToken) method.
public virtual Task<Option<int>> ExecuteNonQueryAsync(CommandEventData eventData, DbCommand command, Option<int> result, CancellationToken cancellationToken)
Parameters
eventData
CommandEventDataAdditional data for event.
command
DbCommandCommand, prepared for execution.
result
Option<int>Value, returned by previous interceptor when multiple ICommandInterceptor instances registered or None.
cancellationToken
CancellationTokenCancellation token.
Returns
- Task<Option<int>>
When event returns None, Linq To DB will execute command, otherwise it will use returned value as execution result.
ExecuteReader(CommandEventData, DbCommand, CommandBehavior, Option<DbDataReader>)
Event, triggered before command execution using ExecuteReader(CommandBehavior) method.
public virtual Option<DbDataReader> ExecuteReader(CommandEventData eventData, DbCommand command, CommandBehavior commandBehavior, Option<DbDataReader> result)
Parameters
eventData
CommandEventDataAdditional data for event.
command
DbCommandCommand, prepared for execution.
commandBehavior
CommandBehaviorBehavior, used for command execution.
result
Option<DbDataReader>Value, returned by previous interceptor when multiple ICommandInterceptor instances registered or None.
Returns
- Option<DbDataReader>
When event returns None, Linq To DB will execute command, otherwise it will use returned value as execution result.
ExecuteReaderAsync(CommandEventData, DbCommand, CommandBehavior, Option<DbDataReader>, CancellationToken)
Event, triggered before command execution using ExecuteReaderAsync(CommandBehavior, CancellationToken) method.
public virtual Task<Option<DbDataReader>> ExecuteReaderAsync(CommandEventData eventData, DbCommand command, CommandBehavior commandBehavior, Option<DbDataReader> result, CancellationToken cancellationToken)
Parameters
eventData
CommandEventDataAdditional data for event.
command
DbCommandCommand, prepared for execution.
commandBehavior
CommandBehaviorBehavior, used for command execution.
result
Option<DbDataReader>Value, returned by previous interceptor when multiple ICommandInterceptor instances registered or None.
cancellationToken
CancellationTokenCancellation token.
Returns
- Task<Option<DbDataReader>>
When event returns None, Linq To DB will execute command, otherwise it will use returned value as execution result.
ExecuteScalar(CommandEventData, DbCommand, Option<object?>)
Event, triggered before command execution using ExecuteScalar() method.
public virtual Option<object?> ExecuteScalar(CommandEventData eventData, DbCommand command, Option<object?> result)
Parameters
eventData
CommandEventDataAdditional data for event.
command
DbCommandCommand, prepared for execution.
result
Option<object>Value, returned by previous interceptor when multiple ICommandInterceptor instances registered or None.
Returns
- Option<object>
When event returns None, Linq To DB will execute command, otherwise it will use returned value as execution result.
ExecuteScalarAsync(CommandEventData, DbCommand, Option<object?>, CancellationToken)
Event, triggered before command execution using ExecuteScalarAsync(CancellationToken) method.
public virtual Task<Option<object?>> ExecuteScalarAsync(CommandEventData eventData, DbCommand command, Option<object?> result, CancellationToken cancellationToken)
Parameters
eventData
CommandEventDataAdditional data for event.
command
DbCommandCommand, prepared for execution.
result
Option<object>Value, returned by previous interceptor when multiple ICommandInterceptor instances registered or None.
cancellationToken
CancellationTokenCancellation token.