Class DataConnection
Implements persistent database connection abstraction over different database engines. Could be initialized using connection string name or connection string, or attached to existing connection or transaction.
Implements
Namespace: LinqToDB.Data
Assembly: linq2db.dll
Syntax
public class DataConnection : object, IDataContext, IConfigurationID, IAsyncDisposable, IInterceptable<ICommandInterceptor>, IInterceptable<IConnectionInterceptor>, IInterceptable<IDataContextInterceptor>, IInterceptable<IEntityServiceInterceptor>, IInterceptable<IUnwrapDataObjectInterceptor>, IInterceptable
Constructors
| Improve this Doc View SourceDataConnection()
Creates database connection object that uses default connection configuration from DefaultConfiguration property.
Declaration
public DataConnection()
DataConnection(Func<DataOptions, DataOptions>)
Creates database connection object that uses default connection configuration from DefaultConfiguration property.
Declaration
public DataConnection(Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(DataOptions)
Creates database connection object that uses a DataOptions to configure the connection.
Declaration
public DataConnection(DataOptions options)
Parameters
Type | Name | Description |
---|---|---|
DataOptions | options | Options, setup ahead of time. |
DataConnection(IDataProvider, DbConnection)
Creates database connection object that uses specified database provider and connection.
Declaration
public DataConnection(IDataProvider dataProvider, DbConnection connection)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
DbConnection | connection | Existing database connection to use. |
Remarks
connection
would not be disposed.
DataConnection(IDataProvider, DbConnection, Func<DataOptions, DataOptions>)
Creates database connection object that uses specified database provider and connection.
Declaration
public DataConnection(IDataProvider dataProvider, DbConnection connection, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
DbConnection | connection | Existing database connection to use. |
Func<DataOptions, DataOptions> | optionsSetter |
Remarks
connection
would not be disposed.
DataConnection(IDataProvider, DbConnection, MappingSchema)
Creates database connection object that uses specified database provider, connection and mapping schema.
Declaration
public DataConnection(IDataProvider dataProvider, DbConnection connection, MappingSchema mappingSchema)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
DbConnection | connection | Existing database connection to use. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
DataConnection(IDataProvider, DbConnection, MappingSchema, Func<DataOptions, DataOptions>)
Creates database connection object that uses specified database provider, connection and mapping schema.
Declaration
public DataConnection(IDataProvider dataProvider, DbConnection connection, MappingSchema mappingSchema, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
DbConnection | connection | Existing database connection to use. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(IDataProvider, DbConnection, Boolean)
Creates database connection object that uses specified database provider and connection.
Declaration
public DataConnection(IDataProvider dataProvider, DbConnection connection, bool disposeConnection)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
DbConnection | connection | Existing database connection to use. |
System.Boolean | disposeConnection | If true |
DataConnection(IDataProvider, DbConnection, Boolean, Func<DataOptions, DataOptions>)
Creates database connection object that uses specified database provider and connection.
Declaration
public DataConnection(IDataProvider dataProvider, DbConnection connection, bool disposeConnection, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
DbConnection | connection | Existing database connection to use. |
System.Boolean | disposeConnection | If true |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(IDataProvider, DbTransaction)
Creates database connection object that uses specified database provider and transaction.
Declaration
public DataConnection(IDataProvider dataProvider, DbTransaction transaction)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
DbTransaction | transaction | Existing database transaction to use. |
DataConnection(IDataProvider, DbTransaction, Func<DataOptions, DataOptions>)
Creates database connection object that uses specified database provider and transaction.
Declaration
public DataConnection(IDataProvider dataProvider, DbTransaction transaction, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
DbTransaction | transaction | Existing database transaction to use. |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(IDataProvider, DbTransaction, MappingSchema)
Creates database connection object that uses specified database provider, transaction and mapping schema.
Declaration
public DataConnection(IDataProvider dataProvider, DbTransaction transaction, MappingSchema mappingSchema)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
DbTransaction | transaction | Existing database transaction to use. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
DataConnection(IDataProvider, DbTransaction, MappingSchema, Func<DataOptions, DataOptions>)
Creates database connection object that uses specified database provider, transaction and mapping schema.
Declaration
public DataConnection(IDataProvider dataProvider, DbTransaction transaction, MappingSchema mappingSchema, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
DbTransaction | transaction | Existing database transaction to use. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(IDataProvider, Func<DbConnection>)
Creates database connection object that uses specified database provider and connection factory.
Declaration
public DataConnection(IDataProvider dataProvider, Func<DbConnection> connectionFactory)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
Func<DbConnection> | connectionFactory | Database connection factory method. |
DataConnection(IDataProvider, Func<DbConnection>, Func<DataOptions, DataOptions>)
Creates database connection object that uses specified database provider and connection factory.
Declaration
public DataConnection(IDataProvider dataProvider, Func<DbConnection> connectionFactory, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
Func<DbConnection> | connectionFactory | Database connection factory method. |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(IDataProvider, Func<DbConnection>, MappingSchema)
Creates database connection object that uses specified database provider, connection factory and mapping schema.
Declaration
public DataConnection(IDataProvider dataProvider, Func<DbConnection> connectionFactory, MappingSchema mappingSchema)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
Func<DbConnection> | connectionFactory | Database connection factory method. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
DataConnection(IDataProvider, Func<DbConnection>, MappingSchema, Func<DataOptions, DataOptions>)
Creates database connection object that uses specified database provider, connection factory and mapping schema.
Declaration
public DataConnection(IDataProvider dataProvider, Func<DbConnection> connectionFactory, MappingSchema mappingSchema, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
Func<DbConnection> | connectionFactory | Database connection factory method. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(IDataProvider, String)
Creates database connection object that uses specified database provider and connection string.
Declaration
public DataConnection(IDataProvider dataProvider, string connectionString)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
System.String | connectionString | Database connection string to use for connection with database. |
DataConnection(IDataProvider, String, Func<DataOptions, DataOptions>)
Creates database connection object that uses specified database provider and connection string.
Declaration
public DataConnection(IDataProvider dataProvider, string connectionString, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
System.String | connectionString | Database connection string to use for connection with database. |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(IDataProvider, String, MappingSchema)
Creates database connection object that uses specified database provider, connection string and mapping schema.
Declaration
public DataConnection(IDataProvider dataProvider, string connectionString, MappingSchema mappingSchema)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
System.String | connectionString | Database connection string to use for connection with database. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
DataConnection(IDataProvider, String, MappingSchema, Func<DataOptions, DataOptions>)
Creates database connection object that uses specified database provider, connection string and mapping schema.
Declaration
public DataConnection(IDataProvider dataProvider, string connectionString, MappingSchema mappingSchema, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation to use with this connection. |
System.String | connectionString | Database connection string to use for connection with database. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(MappingSchema)
Creates database connection object that uses default connection configuration from DefaultConfiguration property and provided mapping schema.
Declaration
public DataConnection(MappingSchema mappingSchema)
Parameters
Type | Name | Description |
---|---|---|
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
DataConnection(MappingSchema, Func<DataOptions, DataOptions>)
Creates database connection object that uses default connection configuration from DefaultConfiguration property and provided mapping schema.
Declaration
public DataConnection(MappingSchema mappingSchema, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(Nullable<String>)
Creates database connection object that uses provided connection configuration.
Declaration
public DataConnection(string? configurationString)
Parameters
Type | Name | Description |
---|---|---|
System.Nullable<System.String> | configurationString | Name of database connection configuration to use with this connection.
In case of |
DataConnection(Nullable<String>, Func<DataOptions, DataOptions>)
Creates database connection object that uses provided connection configuration.
Declaration
public DataConnection(string? configurationString, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
System.Nullable<System.String> | configurationString | Name of database connection configuration to use with this connection.
In case of |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(Nullable<String>, MappingSchema)
Creates database connection object that uses provided connection configuration and mapping schema.
Declaration
public DataConnection(string? configurationString, MappingSchema mappingSchema)
Parameters
Type | Name | Description |
---|---|---|
System.Nullable<System.String> | configurationString | Name of database connection configuration to use with this connection. In case of null, configuration from DefaultConfiguration property will be used. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
DataConnection(Nullable<String>, MappingSchema, Func<DataOptions, DataOptions>)
Creates database connection object that uses provided connection configuration and mapping schema.
Declaration
public DataConnection(string? configurationString, MappingSchema mappingSchema, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
System.Nullable<System.String> | configurationString | Name of database connection configuration to use with this connection. In case of null, configuration from DefaultConfiguration property will be used. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(String, String)
Creates database connection object that uses specified database provider and connection string.
Declaration
public DataConnection(string providerName, string connectionString)
Parameters
Type | Name | Description |
---|---|---|
System.String | providerName | Name of database provider to use with this connection. ProviderName class for list of providers. |
System.String | connectionString | Database connection string to use for connection with database. |
DataConnection(String, String, Func<DataOptions, DataOptions>)
Creates database connection object that uses specified database provider and connection string.
Declaration
public DataConnection(string providerName, string connectionString, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
System.String | providerName | Name of database provider to use with this connection. ProviderName class for list of providers. |
System.String | connectionString | Database connection string to use for connection with database. |
Func<DataOptions, DataOptions> | optionsSetter |
DataConnection(String, String, MappingSchema)
Creates database connection object that uses specified database provider, connection string and mapping schema.
Declaration
public DataConnection(string providerName, string connectionString, MappingSchema mappingSchema)
Parameters
Type | Name | Description |
---|---|---|
System.String | providerName | Name of database provider to use with this connection. ProviderName class for list of providers. |
System.String | connectionString | Database connection string to use for connection with database. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
DataConnection(String, String, MappingSchema, Func<DataOptions, DataOptions>)
Creates database connection object that uses specified database provider, connection string and mapping schema.
Declaration
public DataConnection(string providerName, string connectionString, MappingSchema mappingSchema, Func<DataOptions, DataOptions> optionsSetter)
Parameters
Type | Name | Description |
---|---|---|
System.String | providerName | Name of database provider to use with this connection. ProviderName class for list of providers. |
System.String | connectionString | Database connection string to use for connection with database. |
MappingSchema | mappingSchema | Mapping schema to use with this connection. |
Func<DataOptions, DataOptions> | optionsSetter |
Fields
| Improve this Doc View SourceWriteTraceLine
Trace function. By Default use
First parameter contains trace message.
Second parameter contains trace message category (
Third parameter contains trace level for message (
Declaration
public static Action<string?, string?, TraceLevel> WriteTraceLine
Field Value
Type | Description |
---|---|
Action<System.Nullable<System.String>, System.Nullable<System.String>, TraceLevel> |
Properties
| Improve this Doc View SourceCommandTimeout
Gets or sets command execution timeout in seconds. Negative timeout value means that default timeout will be used. 0 timeout value corresponds to infinite timeout. By default timeout is not set and default value for current provider used.
Declaration
public int CommandTimeout { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
ConfigurationString
Database configuration name (connection string name).
Declaration
public string? ConfigurationString { get; }
Property Value
Type | Description |
---|---|
System.Nullable<System.String> |
Connection
Gets underlying database connection, used by current connection object.
Declaration
public DbConnection Connection { get; }
Property Value
Type | Description |
---|---|
DbConnection |
ConnectionString
Database connection string.
Declaration
public string? ConnectionString { get; }
Property Value
Type | Description |
---|---|
System.Nullable<System.String> |
DataProvider
Database provider implementation for specific database engine.
Declaration
public IDataProvider DataProvider { get; }
Property Value
Type | Description |
---|---|
IDataProvider |
DefaultConfiguration
Gets or sets default connection configuration name. Used by DataConnection by default and could be set automatically from:
- first non-global connection string name from ConnectionStrings;
- first non-global connection string name passed to SetConnectionStrings(IEnumerable<IConnectionStringSettings>) method.
Declaration
public static string? DefaultConfiguration { get; set; }
Property Value
Type | Description |
---|---|
System.Nullable<System.String> |
See Also
| Improve this Doc View SourceDefaultDataProvider
Gets or sets name of default data provider, used by new connection if user didn't specified provider explicitly in constructor or in connection options. Initialized with value from DefaultSettings.DefaultDataProvider.
Declaration
public static string? DefaultDataProvider { get; set; }
Property Value
Type | Description |
---|---|
System.Nullable<System.String> |
See Also
| Improve this Doc View SourceDefaultSettings
Gets or sets default connection settings. By default contains settings from linq2db configuration section from configuration file (not supported by .Net Core). ILinqToDBSettings
Declaration
public static ILinqToDBSettings DefaultSettings { get; set; }
Property Value
Type | Description |
---|---|
ILinqToDBSettings |
Disposed
Declaration
protected bool Disposed { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
InlineParameters
Gets or sets option to force inline parameter values as literals into command text. If parameter inlining not supported for specific value type, it will be used as parameter.
Declaration
public bool InlineParameters { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
IsMarsEnabled
Gets or sets status of Multiple Active Result Sets (MARS) feature. This feature available only for SQL Azure and SQL Server 2005+.
Declaration
public bool IsMarsEnabled { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
LastQuery
Contains text of last command, sent to database using current connection.
Declaration
public string? LastQuery { get; }
Property Value
Type | Description |
---|---|
System.Nullable<System.String> |
MappingSchema
Gets mapping schema, used for current connection.
Declaration
public MappingSchema MappingSchema { get; }
Property Value
Type | Description |
---|---|
MappingSchema |
NextQueryHints
Gets list of query hints (writable collection), that will be used only for next query, executed through current connection.
Declaration
public List<string> NextQueryHints { get; }
Property Value
Type | Description |
---|---|
List<System.String> |
OnRemoveInterceptor
Declaration
public Action<IInterceptor>? OnRemoveInterceptor { get; set; }
Property Value
Type | Description |
---|---|
System.Nullable<Action<IInterceptor>> |
OnTraceConnection
Gets or sets trace handler, used for current connection instance. Configured on the connection builder using UseTracing(DataOptions, Action<TraceInfo>). defaults to WriteTraceLineConnection calls.
Declaration
public Action<TraceInfo> OnTraceConnection { get; set; }
Property Value
Type | Description |
---|---|
Action<TraceInfo> |
Options
Current DataContext options
Declaration
public DataOptions Options { get; }
Property Value
Type | Description |
---|---|
DataOptions |
QueryHints
Gets list of query hints (writable collection), that will be used for all queries, executed through current connection.
Declaration
public List<string> QueryHints { get; }
Property Value
Type | Description |
---|---|
List<System.String> |
RetryPolicy
Retry policy for current connection.
Declaration
public IRetryPolicy RetryPolicy { get; set; }
Property Value
Type | Description |
---|---|
IRetryPolicy |
ThrowOnDisposed
Declaration
public bool? ThrowOnDisposed { get; set; }
Property Value
Type | Description |
---|---|
System.Nullable<System.Boolean> |
TraceSwitch
Gets or sets global data connection trace options. Used for all new connections
unless UseTraceLevel(DataOptions, TraceLevel) is called on builder.
defaults to off unless library was built in debug mode.
Declaration
public static TraceSwitch TraceSwitch { get; set; }
Property Value
Type | Description |
---|---|
TraceSwitch |
TraceSwitchConnection
gets or sets the trace switch, this is used by some methods to determine if OnTraceConnection should be called. defaults to TraceSwitch used for current connection instance.
Declaration
public TraceSwitch TraceSwitchConnection { get; set; }
Property Value
Type | Description |
---|---|
TraceSwitch |
Transaction
Gets current transaction, associated with connection.
Declaration
public DbTransaction? Transaction { get; }
Property Value
Type | Description |
---|---|
System.Nullable<DbTransaction> |
WriteTraceLineConnection
Gets the delegate to write logging messages for this connection. Defaults to WriteTraceLine. Used for the current instance.
Declaration
public Action<string?, string?, TraceLevel> WriteTraceLineConnection { get; }
Property Value
Type | Description |
---|---|
Action<System.Nullable<System.String>, System.Nullable<System.String>, TraceLevel> |
Methods
| Improve this Doc View SourceAddConfiguration(String, String, IDataProvider)
Register connection configuration with specified connection string and database provider implementation.
Declaration
public static void AddConfiguration(string configuration, string connectionString, IDataProvider dataProvider = null)
Parameters
Type | Name | Description |
---|---|---|
System.String | configuration | Connection configuration name. |
System.String | connectionString | Connection string. |
IDataProvider | dataProvider | Database provider. If not specified, will use provider, registered using |
AddDataProvider(IDataProvider)
Registers database provider implementation using Name name.
Declaration
public static void AddDataProvider(IDataProvider dataProvider)
Parameters
Type | Name | Description |
---|---|---|
IDataProvider | dataProvider | Database provider implementation. |
AddDataProvider(String, IDataProvider)
Registers database provider implementation by provided unique name.
Declaration
public static void AddDataProvider(string providerName, IDataProvider dataProvider)
Parameters
Type | Name | Description |
---|---|---|
System.String | providerName | Provider name, to which provider implementation will be mapped. |
IDataProvider | dataProvider | Database provider implementation. |
AddInterceptor(IInterceptor)
Adds interceptor instance to context.
Declaration
public void AddInterceptor(IInterceptor interceptor)
Parameters
Type | Name | Description |
---|---|---|
IInterceptor | interceptor | Interceptor. |
AddMappingSchema(MappingSchema)
Adds additional mapping schema to current connection.
Declaration
public DataConnection AddMappingSchema(MappingSchema mappingSchema)
Parameters
Type | Name | Description |
---|---|---|
MappingSchema | mappingSchema | Mapping schema. |
Returns
Type | Description |
---|---|
DataConnection | Current connection object. |
Remarks
DataConnection will share MappingSchema instances that were created by combining same mapping schemas.
AddOrSetConfiguration(String, String, String)
Declaration
public static void AddOrSetConfiguration(string configuration, string connectionString, string dataProvider)
Parameters
Type | Name | Description |
---|---|---|
System.String | configuration | |
System.String | connectionString | |
System.String | dataProvider |
AddProviderDetector(Func<IConnectionStringSettings, String, IDataProvider>)
Registers database provider factory method.
Factory accepts connection string settings and connection string. Could return null
, if cannot create provider
instance using provided options.
Declaration
public static void AddProviderDetector(Func<IConnectionStringSettings, string, IDataProvider> providerDetector)
Parameters
Type | Name | Description |
---|---|---|
Func<IConnectionStringSettings, System.String, IDataProvider> | providerDetector | Factory method delegate. |
BeginTransaction()
Starts new transaction for current connection with default isolation level. If connection already has transaction, it will be rolled back.
Declaration
public virtual DataConnectionTransaction BeginTransaction()
Returns
Type | Description |
---|---|
DataConnectionTransaction | Database transaction object. |
BeginTransaction(IsolationLevel)
Starts new transaction for current connection with specified isolation level. If connection already have transaction, it will be rolled back.
Declaration
public virtual DataConnectionTransaction BeginTransaction(IsolationLevel isolationLevel)
Parameters
Type | Name | Description |
---|---|---|
IsolationLevel | isolationLevel | Transaction isolation level. |
Returns
Type | Description |
---|---|
DataConnectionTransaction | Database transaction object. |
BeginTransactionAsync(CancellationToken)
Starts new transaction asynchronously for current connection with default isolation level. If connection already has transaction, it will be rolled back.
Declaration
public virtual async Task<DataConnectionTransaction> BeginTransactionAsync(CancellationToken cancellationToken = null)
Parameters
Type | Name | Description |
---|---|---|
CancellationToken | cancellationToken | Asynchronous operation cancellation token. |
Returns
Type | Description |
---|---|
Task<DataConnectionTransaction> | Database transaction object. |
BeginTransactionAsync(IsolationLevel, CancellationToken)
Starts new transaction asynchronously for current connection with specified isolation level. If connection already have transaction, it will be rolled back.
Declaration
public virtual async Task<DataConnectionTransaction> BeginTransactionAsync(IsolationLevel isolationLevel, CancellationToken cancellationToken = null)
Parameters
Type | Name | Description |
---|---|---|
IsolationLevel | isolationLevel | Transaction isolation level. |
CancellationToken | cancellationToken | Asynchronous operation cancellation token. |
Returns
Type | Description |
---|---|
Task<DataConnectionTransaction> | Database transaction object. |
CheckAndThrowOnDisposed()
Declaration
protected void CheckAndThrowOnDisposed()
ClearObjectReaderCache()
Removes cached data mappers.
Declaration
public static void ClearObjectReaderCache()
Clone()
Clones current connection.
Declaration
public object Clone()
Returns
Type | Description |
---|---|
System.Object | Cloned connection. |
Close()
Closes and dispose associated underlying database transaction/connection.
Declaration
public virtual void Close()
CloseAsync()
Closes and dispose associated underlying database transaction/connection asynchronously.
Declaration
public virtual async Task CloseAsync()
Returns
Type | Description |
---|---|
Task | Asynchronous operation completion task. |
CommitTransaction()
Commits transaction (if any), associated with connection.
Declaration
public virtual void CommitTransaction()
CommitTransactionAsync(CancellationToken)
Commits started (if any) transaction, associated with connection. If underlying provider doesn't support asynchronous commit, it will be performed synchronously.
Declaration
public virtual async Task CommitTransactionAsync(CancellationToken cancellationToken = null)
Parameters
Type | Name | Description |
---|---|---|
CancellationToken | cancellationToken | Asynchronous operation cancellation token. |
Returns
Type | Description |
---|---|
Task | Asynchronous operation completion task. |
CreateCommand()
This is internal API and is not intended for use by Linq To DB applications.
Declaration
public DbCommand CreateCommand()
Returns
Type | Description |
---|---|
DbCommand |
Dispose()
Disposes connection.
Declaration
public void Dispose()
DisposeAsync()
Disposes connection asynchronously.
Declaration
public async Task DisposeAsync()
Returns
Type | Description |
---|---|
Task | Asynchronous operation completion task. |
DisposeCommand()
This is internal API and is not intended for use by Linq To DB applications.
Declaration
public void DisposeCommand()
DisposeTransaction()
Disposes transaction (if any), associated with connection.
Declaration
public virtual void DisposeTransaction()
DisposeTransactionAsync()
Dispose started (if any) transaction, associated with connection. If underlying provider doesn't support asynchonous disposal, it will be performed synchonously.
Declaration
public virtual async Task DisposeTransactionAsync()
Returns
Type | Description |
---|---|
Task | Asynchronous operation completion task. |
EnsureConnectionAsync(CancellationToken)
Ensure that database connection opened. If opened connection missing, it will be opened asynchronously.
Declaration
public async Task EnsureConnectionAsync(CancellationToken cancellationToken = null)
Parameters
Type | Name | Description |
---|---|---|
CancellationToken | cancellationToken | Asynchronous operation cancellation token. |
Returns
Type | Description |
---|---|
Task | Async operation task. |
ExecuteNonQuery(DbCommand)
Declaration
protected virtual int ExecuteNonQuery(DbCommand command)
Parameters
Type | Name | Description |
---|---|---|
DbCommand | command |
Returns
Type | Description |
---|---|
System.Int32 |
ExecuteNonQueryAsync(CancellationToken)
Declaration
protected virtual async Task<int> ExecuteNonQueryAsync(CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
CancellationToken | cancellationToken |
Returns
Type | Description |
---|---|
Task<System.Int32> |
ExecuteReader(CommandBehavior)
Declaration
protected virtual DataReaderWrapper ExecuteReader(CommandBehavior commandBehavior)
Parameters
Type | Name | Description |
---|---|---|
CommandBehavior | commandBehavior |
Returns
Type | Description |
---|---|
DataReaderWrapper |
ExecuteReaderAsync(CommandBehavior, CancellationToken)
Declaration
protected virtual async Task<DataReaderWrapper> ExecuteReaderAsync(CommandBehavior commandBehavior, CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
CommandBehavior | commandBehavior | |
CancellationToken | cancellationToken |
Returns
Type | Description |
---|---|
Task<DataReaderWrapper> |
ExecuteScalar(DbCommand)
Declaration
protected virtual object? ExecuteScalar(DbCommand command)
Parameters
Type | Name | Description |
---|---|---|
DbCommand | command |
Returns
Type | Description |
---|---|
System.Nullable<System.Object> |
ExecuteScalarAsync(CancellationToken)
Declaration
protected virtual async Task<object?> ExecuteScalarAsync(CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
CancellationToken | cancellationToken |
Returns
Type | Description |
---|---|
Task<System.Nullable<System.Object>> |
GetConnectionString(String)
Returns connection string for specified connection name.
Declaration
public static string GetConnectionString(string configurationString)
Parameters
Type | Name | Description |
---|---|---|
System.String | configurationString | Connection name. |
Returns
Type | Description |
---|---|
System.String | Connection string. |
GetDataProvider(String)
Returns database provider implementation, associated with provided connection configuration name.
Declaration
public static IDataProvider GetDataProvider(string configurationString)
Parameters
Type | Name | Description |
---|---|---|
System.String | configurationString | Connection configuration name. |
Returns
Type | Description |
---|---|
IDataProvider | Database provider. |
GetDataProvider(String, String)
Returns database provider associated with provider name and connection string.
Declaration
public static IDataProvider GetDataProvider(string providerName, string connectionString)
Parameters
Type | Name | Description |
---|---|---|
System.String | providerName | Provider name. |
System.String | connectionString | Connection string. |
Returns
Type | Description |
---|---|
IDataProvider | Database provider. |
GetDataProvider(String, String, String)
Returns database provider associated with provider name, configuration and connection string.
Declaration
public static IDataProvider GetDataProvider(string providerName, string configurationString, string connectionString)
Parameters
Type | Name | Description |
---|---|---|
System.String | providerName | Provider name. |
System.String | configurationString | Connection configuration name. |
System.String | connectionString | Connection string. |
Returns
Type | Description |
---|---|
IDataProvider | Database provider. |
GetFluentMappingBuilder()
Declaration
public FluentMappingBuilder GetFluentMappingBuilder()
Returns
Type | Description |
---|---|
FluentMappingBuilder |
GetRegisteredProviders()
Returns registered database providers.
Declaration
public static IReadOnlyDictionary<string, IDataProvider> GetRegisteredProviders()
Returns
Type | Description |
---|---|
IReadOnlyDictionary<System.String, IDataProvider> | Returns registered providers collection. |
InsertProviderDetector(Func<IConnectionStringSettings, String, IDataProvider>)
Registers database provider factory method.
Factory accepts connection string settings and connection string. Could return null
, if cannot create provider
instance using provided options.
Declaration
public static void InsertProviderDetector(Func<IConnectionStringSettings, string, IDataProvider> providerDetector)
Parameters
Type | Name | Description |
---|---|---|
Func<IConnectionStringSettings, System.String, IDataProvider> | providerDetector | Factory method delegate. |
ProcessQuery(SqlStatement, EvaluationContext)
Declaration
protected virtual SqlStatement ProcessQuery(SqlStatement statement, EvaluationContext context)
Parameters
Type | Name | Description |
---|---|---|
SqlStatement | statement | |
EvaluationContext | context |
Returns
Type | Description |
---|---|
SqlStatement |
RemoveInterceptor(IInterceptor)
Declaration
public void RemoveInterceptor(IInterceptor interceptor)
Parameters
Type | Name | Description |
---|---|---|
IInterceptor | interceptor |
RollbackTransaction()
Rollbacks transaction (if any), associated with connection.
Declaration
public virtual void RollbackTransaction()
RollbackTransactionAsync(CancellationToken)
Rollbacks started (if any) transaction, associated with connection. If underlying provider doesn't support asynchonous commit, it will be performed synchonously.
Declaration
public virtual async Task RollbackTransactionAsync(CancellationToken cancellationToken = null)
Parameters
Type | Name | Description |
---|---|---|
CancellationToken | cancellationToken | Asynchronous operation cancellation token. |
Returns
Type | Description |
---|---|
Task | Asynchronous operation completion task. |
SetConnectionString(String, String)
Sets connection string for specified connection name.
Declaration
public static void SetConnectionString(string configuration, string connectionString)
Parameters
Type | Name | Description |
---|---|---|
System.String | configuration | Connection name. |
System.String | connectionString | Connection string. |
SetConnectionStrings(IEnumerable<IConnectionStringSettings>)
Register connection strings for use by data connection class.
Declaration
public static void SetConnectionStrings(IEnumerable<IConnectionStringSettings> connectionStrings)
Parameters
Type | Name | Description |
---|---|---|
IEnumerable<IConnectionStringSettings> | connectionStrings | Collection of connection string configurations. |
TraceAction<TContext, TResult>(DataConnection, TraceOperation, Nullable<Func<TContext, Nullable<String>>>, TContext, Func<DataConnection, TContext, TResult>)
Declaration
protected static TResult TraceAction<TContext, TResult>(DataConnection dataConnection, TraceOperation traceOperation, Func<TContext, string?>? commandText, TContext context, Func<DataConnection, TContext, TResult> action)
Parameters
Type | Name | Description |
---|---|---|
DataConnection | dataConnection | |
TraceOperation | traceOperation | |
System.Nullable<Func<TContext, System.Nullable<System.String>>> | commandText | |
TContext | context | |
Func<DataConnection, TContext, TResult> | action |
Returns
Type | Description |
---|---|
TResult |
Type Parameters
Name | Description |
---|---|
TContext | |
TResult |
TraceActionAsync<TContext, TResult>(DataConnection, TraceOperation, Nullable<Func<TContext, Nullable<String>>>, TContext, Func<DataConnection, TContext, CancellationToken, Task<TResult>>, CancellationToken)
Declaration
protected static async Task<TResult> TraceActionAsync<TContext, TResult>(DataConnection dataConnection, TraceOperation traceOperation, Func<TContext, string?>? commandText, TContext context, Func<DataConnection, TContext, CancellationToken, Task<TResult>> action, CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
DataConnection | dataConnection | |
TraceOperation | traceOperation | |
System.Nullable<Func<TContext, System.Nullable<System.String>>> | commandText | |
TContext | context | |
Func<DataConnection, TContext, CancellationToken, Task<TResult>> | action | |
CancellationToken | cancellationToken |
Returns
Type | Description |
---|---|
Task<TResult> |
Type Parameters
Name | Description |
---|---|
TContext | |
TResult |
TryGetConnectionString(Nullable<String>)
Returns connection string for specified configuration name or NULL.
Declaration
public static string? TryGetConnectionString(string? configurationString)
Parameters
Type | Name | Description |
---|---|---|
System.Nullable<System.String> | configurationString | Configuration. |
Returns
Type | Description |
---|---|
System.Nullable<System.String> | Connection string or NULL. |
TurnTraceSwitchOn(TraceLevel)
Sets tracing level for data connections.
Declaration
public static void TurnTraceSwitchOn(TraceLevel traceLevel = null)
Parameters
Type | Name | Description |
---|---|---|
TraceLevel | traceLevel | Connection tracing level. |
Remarks
Use TraceSwitchConnection when possible, configured via UseTraceLevel(DataOptions, TraceLevel).
Explicit Interface Implementations
| Improve this Doc View SourceIConfigurationID.ConfigurationID
Declaration
int IConfigurationID.ConfigurationID { get; }
Returns
Type | Description |
---|---|
System.Int32 |
IDataContext.Clone(Boolean)
Declaration
IDataContext IDataContext.Clone(bool forNestedQuery)
Parameters
Type | Name | Description |
---|---|---|
System.Boolean | forNestedQuery |
Returns
Type | Description |
---|---|
IDataContext |
IDataContext.CloseAfterUse
Declaration
bool IDataContext.CloseAfterUse { get; set; }
Returns
Type | Description |
---|---|
System.Boolean |
IDataContext.ContextName
Declaration
string IDataContext.ContextName { get; }
Returns
Type | Description |
---|---|
System.String |
IDataContext.CreateSqlProvider
Declaration
Func<ISqlBuilder> IDataContext.CreateSqlProvider { get; }
Returns
Type | Description |
---|---|
Func<ISqlBuilder> |
IDataContext.DataReaderType
Declaration
Type IDataContext.DataReaderType { get; }
Returns
Type | Description |
---|---|
Type |
IDataContext.GetQueryRunner(Query, Int32, Expression, Nullable<Object>[], Nullable<Object>[])
Declaration
IQueryRunner IDataContext.GetQueryRunner(Query query, int queryNumber, Expression expression, object? [] parameters, object? [] preambles)
Parameters
Type | Name | Description |
---|---|---|
Query | query | |
System.Int32 | queryNumber | |
Expression | expression | |
System.Nullable<System.Object>[] | parameters | |
System.Nullable<System.Object>[] | preambles |
Returns
Type | Description |
---|---|
IQueryRunner |
IDataContext.GetReaderExpression(DbDataReader, Int32, Expression, Type)
Declaration
Expression IDataContext.GetReaderExpression(DbDataReader reader, int idx, Expression readerExpression, Type toType)
Parameters
Type | Name | Description |
---|---|---|
DbDataReader | reader | |
System.Int32 | idx | |
Expression | readerExpression | |
Type | toType |
Returns
Type | Description |
---|---|
Expression |
IDataContext.GetSqlOptimizer
Declaration
Func<DataOptions, ISqlOptimizer> IDataContext.GetSqlOptimizer { get; }
Returns
Type | Description |
---|---|
Func<DataOptions, ISqlOptimizer> |
IDataContext.IsDBNullAllowed(DbDataReader, Int32)
Declaration
bool? IDataContext.IsDBNullAllowed(DbDataReader reader, int idx)
Parameters
Type | Name | Description |
---|---|---|
DbDataReader | reader | |
System.Int32 | idx |
Returns
Type | Description |
---|---|
System.Nullable<System.Boolean> |
IDataContext.SqlProviderFlags
Declaration
SqlProviderFlags IDataContext.SqlProviderFlags { get; }
Returns
Type | Description |
---|---|
SqlProviderFlags |
IDataContext.SupportedTableOptions
Declaration
TableOptions IDataContext.SupportedTableOptions { get; }
Returns
Type | Description |
---|---|
TableOptions |
IDataContext.UnwrapDataObjectInterceptor
Declaration
IUnwrapDataObjectInterceptor IDataContext.UnwrapDataObjectInterceptor { get; }
Returns
Type | Description |
---|---|
IUnwrapDataObjectInterceptor |
IInterceptable<ICommandInterceptor>.Interceptor
Declaration
ICommandInterceptor IInterceptable<ICommandInterceptor>.Interceptor { get; set; }
Returns
Type | Description |
---|---|
ICommandInterceptor |
IInterceptable<IConnectionInterceptor>.Interceptor
Declaration
IConnectionInterceptor IInterceptable<IConnectionInterceptor>.Interceptor { get; set; }
Returns
Type | Description |
---|---|
IConnectionInterceptor |
IInterceptable<IDataContextInterceptor>.Interceptor
Declaration
IDataContextInterceptor IInterceptable<IDataContextInterceptor>.Interceptor { get; set; }
Returns
Type | Description |
---|---|
IDataContextInterceptor |
IInterceptable<IEntityServiceInterceptor>.Interceptor
Declaration
IEntityServiceInterceptor IInterceptable<IEntityServiceInterceptor>.Interceptor { get; set; }
Returns
Type | Description |
---|---|
IEntityServiceInterceptor |
IInterceptable<IUnwrapDataObjectInterceptor>.Interceptor
Declaration
IUnwrapDataObjectInterceptor IInterceptable<IUnwrapDataObjectInterceptor>.Interceptor { get; set; }
Returns
Type | Description |
---|---|
IUnwrapDataObjectInterceptor |