public IConnectionString Get(EDbType dbType) { if (_connectionStrings.ContainsKey(dbType.ToString())) { return _connectionStrings[dbType.ToString()].ConnectionString; } throw new ConnectionStringRegistryException( string.Format("ConnectionString for database type [{0}] not found", dbType.ToString())); }
internal void SetConnectionString(EDbType dbType, string dataSource, string user, string password) { if (!ConnectionStringRegistry.Instance().HasDbType(dbType)) { IConnectionString oraConnect; if (_connectionStringsLoaded.ContainsKey(dataSource)) { oraConnect = _connectionStringsLoaded[dataSource]; } else { oraConnect = new OracleConnectionString(dataSource, user, password) {ConnectionPooling = true}; } ConnectionStringRegistry.Instance().Add(dbType, oraConnect); } }
public bool SwitchDb(SwitchDbExcuteFun fun, EDbType e) { try { this._context.Database.Connection.ConnectionString = e == EDbType.UpdateDb ? DbHelperSql.DefaultUpdateConn : DbHelperSql.DefaultQueryConn; fun(); } catch (Exception dbEx) { var fail = new Exception("SwitchDb:" + dbEx.Message, dbEx); throw fail; } finally { this._context.Database.Connection.ConnectionString = e == EDbType.UpdateDb ? DbHelperSql.DefaultQueryConn : DbHelperSql.DefaultUpdateConn; } return(true); }
public DbCommandEx(IDbCommand command) { _Command = command; if (command is MySqlCommand) { _Type = EDbType.MySql; } else if (command is SqlCommand) { _Type = EDbType.SqlServer; } else if (command is OleDbCommand) { _Type = EDbType.OleDb; } else if (command is OdbcCommand) { _Type = EDbType.Odbc; } //else if (command is OracleCommand) _Type = EDbType.Oracle; }
internal string GetDatabaseId(EDbType databaseType, EDatabaseMode databaseMode) { string found = null; foreach (var dbType in this) { foreach (var database in dbType.Databases) { if (dbType.DbType == databaseType && database.DbMode == databaseMode) { found = database.Id; break; } } if (found != null) { break; } } return(found); }
public void Configure() { bool connectionStringFromCmdLineExists = false; bool connectionStringFromXmlFileExists = false; if (!string.IsNullOrEmpty(_user) && !string.IsNullOrEmpty(_password)) { connectionStringFromCmdLineExists = true; } var loader = new ConnectionStringLoader(); var connectionStrings = loader.Load(); if (connectionStrings != null && connectionStrings.Count > 0) { connectionStringFromXmlFileExists = true; } OracleConnectionString connectString; if (connectionStringFromCmdLineExists) { connectString = new OracleConnectionString(_dataSource, _user, _password); } else if (connectionStringFromXmlFileExists) { connectString = connectionStrings[_dataSource] as OracleConnectionString; Debug.Assert(connectString != null, "connectString != null"); if (connectString.HasProxyUserAndPassword) { connectString.User = WindowsIdentity.GetCurrent().NameWithoutDomain(); connectString.Password = null; } Debug.Assert(connectString != null, "ConnectionString not of type OracleConnectionString?"); } else { throw new ConnectionStringRegistryException( "No Database ConnectionString configuration found. Please use command-line or xml-config."); } if (DbType == EDbType.Unkown && DbMode == EDatabaseMode.Unkown) { var databaseTypesLoader = new DatabaseTypesLoader(); var dbTypes = databaseTypesLoader.Load(); DbType = dbTypes.GetDbType(_dataSource); DbMode = dbTypes.GetDbMode(_dataSource); } if (DbType == EDbType.Unkown) throw new ConnectionStringRegistryException(string.Format("Unkown database type [{0}]", _dataSource)); if (DbMode == EDatabaseMode.Unkown) throw new ConnectionStringRegistryException(string.Format("Unkown database mode [{0}]", _dataSource)); connectString.ConnectionPooling = true; ConnectionStringRegistry.Instance().DatabaseMode = DbMode; ConnectionStringRegistry.Instance().Add(DbType, connectString); }
public void Configure() { bool connectionStringFromCmdLineExists = false; bool connectionStringFromXmlFileExists = false; if (!string.IsNullOrEmpty(_user) && !string.IsNullOrEmpty(_password)) { connectionStringFromCmdLineExists = true; } var loader = new ConnectionStringLoader(); var connectionStrings = loader.Load(); if (connectionStrings != null && connectionStrings.Count > 0) { connectionStringFromXmlFileExists = true; } OracleConnectionString connectString; if (connectionStringFromCmdLineExists) { connectString = new OracleConnectionString(_dataSource, _user, _password); } else if (connectionStringFromXmlFileExists) { connectString = connectionStrings[_dataSource] as OracleConnectionString; Debug.Assert(connectString != null, "connectString != null"); if (connectString.HasProxyUserAndPassword) { connectString.User = WindowsIdentity.GetCurrent().NameWithoutDomain(); connectString.Password = null; } Debug.Assert(connectString != null, "ConnectionString not of type OracleConnectionString?"); } else { throw new ConnectionStringRegistryException( "No Database ConnectionString configuration found. Please use command-line or xml-config."); } if (DbType == EDbType.Unkown && DbMode == EDatabaseMode.Unkown) { var databaseTypesLoader = new DatabaseTypesLoader(); var dbTypes = databaseTypesLoader.Load(); DbType = dbTypes.GetDbType(_dataSource); DbMode = dbTypes.GetDbMode(_dataSource); } if (DbType == EDbType.Unkown) { throw new ConnectionStringRegistryException(string.Format("Unkown database type [{0}]", _dataSource)); } if (DbMode == EDatabaseMode.Unkown) { throw new ConnectionStringRegistryException(string.Format("Unkown database mode [{0}]", _dataSource)); } connectString.ConnectionPooling = true; ConnectionStringRegistry.Instance().DatabaseMode = DbMode; ConnectionStringRegistry.Instance().Add(DbType, connectString); }
public bool HasDbType(EDbType dbType) { return(_connectionStrings.ContainsKey(dbType.ToString())); }
public void Add(EDbType dbType, IConnectionString connectionString) { Add(connectionString, dbType, false); }
private void Add(IConnectionString connectionString, EDbType dbType, bool defaultDatabase) { Debug.Assert(connectionString != null, "connectionString is null"); Debug.Assert(!_connectionStrings.ContainsKey(dbType.ToString()), string.Format("Connection string for [{0}] exists already", dbType.ToString())); _connectionStrings.Add(dbType.ToString(), new ConnectionStringEntry(connectionString, defaultDatabase)); }
public bool HasDbType(EDbType dbType) { return _connectionStrings.ContainsKey(dbType.ToString()); }
public void Add(EDbType dbType, IConnectionString connectionString) { Add(connectionString, dbType, false); }