Class ProviderDetectorBase<TProvider, TVersion>
- Namespace
- LinqToDB.Internal.DataProvider
- Assembly
- linq2db.dll
public abstract class ProviderDetectorBase<TProvider, TVersion> where TProvider : struct, Enum where TVersion : struct, Enum
Type Parameters
TProviderTVersion
- Inheritance
-
ProviderDetectorBase<TProvider, TVersion>
- Derived
- Inherited Members
- Extension Methods
Constructors
ProviderDetectorBase()
protected ProviderDetectorBase()
ProviderDetectorBase(TVersion, TVersion)
protected ProviderDetectorBase(TVersion autoDetectVersion, TVersion defaultVersion)
Parameters
autoDetectVersionTVersiondefaultVersionTVersion
Properties
AutoDetectProvider
public bool AutoDetectProvider { get; set; }
Property Value
AutoDetectVersion
public TVersion AutoDetectVersion { get; set; }
Property Value
- TVersion
DefaultVersion
public TVersion DefaultVersion { get; set; }
Property Value
- TVersion
Methods
ClearCache()
Clears provider version cache.
public static void ClearCache()
CreateConnection(TProvider, string)
protected abstract DbConnection CreateConnection(TProvider provider, string connectionString)
Parameters
providerTProviderconnectionStringstring
Returns
CreateDataProvider<T>()
Creates provider instance factory with instance registration it in DataConnection.
protected static Lazy<IDataProvider> CreateDataProvider<T>() where T : IDataProvider, new()
Returns
Type Parameters
T
CreateOptions(DataOptions, TVersion, TProvider)
public DataOptions CreateOptions(DataOptions options, TVersion dialect, TProvider provider)
Parameters
optionsDataOptionsdialectTVersionproviderTProvider
Returns
DetectProvider(ConnectionOptions)
public abstract IDataProvider? DetectProvider(ConnectionOptions options)
Parameters
optionsConnectionOptions
Returns
DetectProvider(ConnectionOptions, TProvider)
protected virtual TProvider DetectProvider(ConnectionOptions options, TProvider provider)
Parameters
optionsConnectionOptionsproviderTProvider
Returns
- TProvider
DetectServerVersion(ConnectionOptions, TProvider)
Connects to database and parses version information.
public TVersion? DetectServerVersion(ConnectionOptions options, TProvider provider)
Parameters
optionsConnectionOptionsproviderTProvider
Returns
- TVersion?
Detected database server/dialect version.
Remarks
Uses cache to avoid unwanted connections to Database.
DetectServerVersion(DbConnection, DbTransaction?)
protected abstract TVersion? DetectServerVersion(DbConnection connection, DbTransaction? transaction)
Parameters
connectionDbConnectiontransactionDbTransaction
Returns
- TVersion?
GetDataProvider(ConnectionOptions, TProvider, TVersion)
public abstract IDataProvider GetDataProvider(ConnectionOptions options, TProvider provider, TVersion version)
Parameters
optionsConnectionOptionsproviderTProviderversionTVersion
Returns
TryGetCachedServerVersion(string, out TVersion?)
public bool TryGetCachedServerVersion(string connectionString, out TVersion? version)
Parameters
connectionStringstringversionTVersion?