示例#1
0
        /// <summary>
        /// 初始化DB连接
        /// </summary>
        public static void Initialize()
        {
            DbBaseProvider dbBaseProvider = null;
            var            er             = ConfigurationManager.ConnectionStrings.GetEnumerator();

            while (er.MoveNext())
            {
                ConnectionStringSettings connSetting = er.Current as ConnectionStringSettings;
                if (connSetting == null)
                {
                    continue;
                }
                var setting = ConnectionSetting.Create(connSetting.Name, connSetting.ProviderName, connSetting.ConnectionString.Trim());
                if (setting.DbLevel == DbLevel.LocalMysql || setting.DbLevel == DbLevel.LocalSql)
                {
                    continue;
                }
                dbBaseProvider = CreateDbProvider(setting);
                try
                {
                    dbBaseProvider.CheckConnect();
                }
                catch (Exception ex)
                {
                    throw new Exception(string.Format("Not connect to the database server \"{0}\" database \"{1}\".", dbBaseProvider.ConnectionSetting.DataSource, dbBaseProvider.ConnectionSetting.DatabaseName), ex);
                }
                dbProviders.TryAdd(connSetting.Name, dbBaseProvider);
            }
        }
        /// <summary>
        /// 初始化DB连接
        /// </summary>
        /// <exception cref="Exception"></exception>
        public static void Initialize()
        {
            var connectionList = ConfigManager.Configger.GetConfig <ConnectionSection>();

            foreach (var section in connectionList)
            {
                var setting = ConnectionSetting.Create(section.Name, section.ProviderName, section.ConnectionString.Trim());
                if (setting.ProviderType == DbProviderType.Unkown)
                {
                    if (setting.DbLevel != DbLevel.LocalMySql && setting.DbLevel != DbLevel.LocalSql)
                    {
                        TraceLog.WriteWarn("Db connection not found provider type, {0} connectionString:{1}", section.Name, setting.ConnectionString);
                    }
                    continue;
                }
                var dbBaseProvider = CreateDbProvider(setting);
                try
                {
                    dbBaseProvider.CheckConnect();
                }
                catch (Exception ex)
                {
                    throw new Exception(string.Format("Not connect to the database server \"{0}\" database \"{1}\".", dbBaseProvider.ConnectionSetting.DataSource, dbBaseProvider.ConnectionSetting.DatabaseName), ex);
                }
                dbProviders.AddOrUpdate(section.Name, dbBaseProvider, (k, oldValue) => dbBaseProvider);
            }
        }
示例#3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="name"></param>
        /// <param name="providerTypeName"></param>
        /// <param name="connectionString"></param>
        /// <returns></returns>
        public static DbBaseProvider CreateDbProvider(string name, string providerTypeName, string connectionString)
        {
            Type type = TryGetProviderType(providerTypeName);

            if (type == null)
            {
                type = typeof(SqlDataProvider);
            }
            return(type.CreateInstance <DbBaseProvider>(ConnectionSetting.Create(name, providerTypeName, connectionString)));
        }
示例#4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="name"></param>
        /// <param name="providerTypeName"></param>
        /// <param name="connectionString"></param>
        /// <returns></returns>
        public static DbBaseProvider CreateDbProvider(string name, string providerTypeName, string connectionString)
        {
            var setting = ConnectionSetting.Create(name, providerTypeName, connectionString);

            return(CreateDbProvider(setting));
        }