Exemple #1
0
        static DataConnection()
        {
            _configurationIDs = new ConcurrentDictionary <string, int>();


            OracleTools.GetDataProvider();
            PostgreSQLTools.GetDataProvider();

            var section = LinqToDBSection.Instance;

            if (section != null)
            {
                DefaultConfiguration = section.DefaultConfiguration;
                DefaultDataProvider  = section.DefaultDataProvider;

                foreach (DataProviderElement provider in section.DataProviders)
                {
                    var dataProviderType = Type.GetType(provider.TypeName, true);
                    var providerInstance = (IDataProviderFactory)Activator.CreateInstance(dataProviderType);

                    if (!string.IsNullOrEmpty(provider.Name))
                    {
                        AddDataProvider(provider.Name, providerInstance.GetDataProvider(provider.Attributes));
                    }
                }
            }
        }
Exemple #2
0
 public static LinqToDBConnectionOptionsBuilder UseOracle(this LinqToDBConnectionOptionsBuilder builder, string connectionString, OracleVersion dialect, bool useNativeProvider)
 {
     return(builder.UseConnectionString(
                OracleTools.GetDataProvider(
                    dialect,
                    useNativeProvider ? OracleProvider.Native : OracleProvider.Managed),
                connectionString));
 }
 /// <summary>
 /// Configure connection to use specific Oracle provider, dialect and connection string.
 /// </summary>
 /// <param name="builder">Instance of <see cref="LinqToDbConnectionOptionsBuilder"/>.</param>
 /// <param name="connectionString">Oracle connection string.</param>
 /// <param name="dialect">Oracle dialect support level.</param>
 /// <param name="useNativeProvider">if <c>true</c>, <c>Oracle.DataAccess</c> provider will be used; othwerwise managed <c>Oracle.ManagedDataAccess</c>.</param>
 /// <returns>The builder instance so calls can be chained.</returns>
 public static LinqToDbConnectionOptionsBuilder UseOracle(this LinqToDbConnectionOptionsBuilder builder, string connectionString, OracleVersion dialect, bool useNativeProvider)
 {
     return(builder.UseConnectionString(
                OracleTools.GetDataProvider(
                    useNativeProvider ? ProviderName.OracleNative : ProviderName.OracleManaged,
                    null,
                    dialect),
                connectionString));
 }
 /// <summary>
 /// Configure connection to use Oracle default provider, specific dialect and connection string.
 /// </summary>
 /// <param name="builder">Instance of <see cref="LinqToDbConnectionOptionsBuilder"/>.</param>
 /// <param name="connectionString">Oracle connection string.</param>
 /// <param name="dialect">Oracle dialect support level.</param>
 /// <returns>The builder instance so calls can be chained.</returns>
 /// <remarks>
 /// <para>
 /// By default Linq To DB tries to load managed version of Oracle provider.
 /// </para>
 /// </remarks>
 public static LinqToDbConnectionOptionsBuilder UseOracle(this LinqToDbConnectionOptionsBuilder builder, string connectionString, OracleVersion dialect)
 {
     return(builder.UseConnectionString(OracleTools.GetDataProvider(ProviderName.Oracle, null, dialect), connectionString));
 }
Exemple #5
0
 /// <summary>
 /// Configure connection to use specific Oracle provider, dialect and connection string.
 /// </summary>
 /// <param name="builder">Instance of <see cref="LinqToDBConnectionOptionsBuilder"/>.</param>
 /// <param name="connectionString">Oracle connection string.</param>
 /// <param name="dialect">Oracle dialect support level.</param>
 /// <param name="provider">ADO.NET provider to use.</param>
 /// <returns>The builder instance so calls can be chained.</returns>
 public static LinqToDBConnectionOptionsBuilder UseOracle(this LinqToDBConnectionOptionsBuilder builder, string connectionString, OracleVersion dialect, OracleProvider provider)
 {
     return(builder.UseConnectionString(
                OracleTools.GetDataProvider(dialect, provider),
                connectionString));
 }