public static string GetMetaDatabase(string tenant) { if (string.IsNullOrWhiteSpace(tenant)) { return(string.Empty); } string provider = GetProviderName(tenant); string meta = string.Empty; if (provider.ToUpperInvariant().Equals("NPGSQL")) { var config = PostgreSQLConfig.Get(); meta = config.MetaDatabase; if (string.IsNullOrWhiteSpace(meta)) { meta = "postgres"; } } if (provider.ToUpperInvariant().Equals("SYSTEM.DATA.SQLCLIENT")) { var config = SqlServerConfig.Get(); meta = config.MetaDatabase; if (string.IsNullOrWhiteSpace(meta)) { meta = "master"; } } return(meta); }
public DbServer(string tenant) { this.Tenant = tenant; string provider = DbProvider.GetProviderName(tenant); if (provider.ToUpperInvariant().Equals("NPGSQL")) { var config = PostgreSQLConfig.Get(); this.ProviderName = provider; this.BinDirectory = config.PostgreSQLBinDirectory; this.DatabaseBackupDirectory = config.DatabaseBackupDirectory; this.HostName = config.Server; this.PortNumber = config.Port ?? 5432; this.UserId = config.UserId; this.Password = config.Password; } if (provider.ToUpperInvariant().Equals("SYSTEM.DATA.SQLCLIENT")) { var config = SqlServerConfig.Get(); this.ProviderName = provider; this.DatabaseBackupDirectory = config.DatabaseBackupDirectory; this.HostName = config.Server; this.PortNumber = config.Port ?? 0; this.UserId = config.UserId; this.Password = config.Password; } this.Validate(); }
public string GetSuperUserConnectionString(string tenant, string database = "") { var config = SqlServerConfig.Get(); string dataSource = config.Server; if (config.Port > 0) { dataSource += ", " + config.Port; } var builder = new SqlConnectionStringBuilder { DataSource = dataSource, InitialCatalog = database, Pooling = config.EnablePooling ?? true, MinPoolSize = config.MinPoolSize ?? 1, MaxPoolSize = config.MaxPoolSize ?? 100, ApplicationName = "Frapid", NetworkLibrary = config.NetworkLibrary, ConnectTimeout = config.Timeout ?? 120 }; if (config.TrustedSuperUserConnection.To(false)) { builder.IntegratedSecurity = true; } else { builder.UserID = config.SuperUserId; builder.Password = config.SuperUserPassword; } return(builder.ConnectionString); }
public string GetConnectionString(string tenant, string database = "", string userId = "", string password = "") { var config = SqlServerConfig.Get(); if (string.IsNullOrWhiteSpace(userId)) { userId = config.UserId; } if (string.IsNullOrWhiteSpace(password)) { password = config.Password; } return(this.GetConnectionString(tenant, config.Server, database, userId, password, config.Port ?? 0, config.EnablePooling ?? true, config.MinPoolSize ?? 1, config.MaxPoolSize ?? 100, config.NetworkLibrary)); }
internal static string Test(SqlServerConfig config) { var builder = new SqlConnectionStringBuilder { DataSource = config.Server, NetworkLibrary = config.NetworkLibrary, Pooling = config.EnablePooling, MinPoolSize = config.MinPoolSize, MaxPoolSize = config.MaxPoolSize }; if (config.TrustedSuperUserConnection) { builder.IntegratedSecurity = true; } else { builder.UserID = config.SuperUserId; builder.Password = config.SuperUserPassword; } using (var connection = new SqlConnection(builder.ConnectionString)) { using (var command = new SqlCommand("SELECT 1;", connection)) { try { connection.Open(); command.ExecuteNonQuery(); } catch (Exception ex) { return("Error: " + ex.Message); } } } return("Connection to SQL Server was successful."); }
public SqlServerFixture() { var config = new ConfigurationBuilder() .AddEnvironmentVariables() .Build(); SqlServerConfig = SqlServerConfigReader.Read(config); var genericScriptsReader = new GenericSqlScriptsReader(new GenericScriptTemplateReader()); var databaseDeleterFactory = new DatabaseDeleterFactory(SqlServerConfig.GetConnectionStringForMasterDatabase(), genericScriptsReader); var systemClock = new RealSystemClock(); _dbSynchronizer = new DatabaseSynchronizer( new OutdatedDatabaseCleaner( new OutdatedDatabaseFinder( SqlServerConfig.GetConnectionStringForMasterDatabase(), SqlServerConfig.DatabaseNameTemplate, systemClock), databaseDeleterFactory), new EmptyDatabaseCreator( SqlServerConfig.GetConnectionStringForMasterDatabase(), SqlServerConfig.GetUniqueDatabaseName(), genericScriptsReader), new DatabaseSchemaApplier( SqlServerConfig.GetConnectionStringForTestDatabase(), new DatabaseScriptsReader()), databaseDeleterFactory.CreateForDb(SqlServerConfig.GetUniqueDatabaseName())); try { _dbSynchronizer.CleanOutdatedDatabases(); _dbSynchronizer.DeleteTestDatabase(); _dbSynchronizer.CreateDatabaseForTests(); } catch (Exception) { _dbSynchronizer.DeleteTestDatabase(); throw; } }
//private readonly SQLConfigSingleton _singletonSqlConfig; #endregion atribute #region Constructor public SqlServerDatabase(SqlServerConfig serverConfig) { ConnectionString = serverConfig.ConnectionString; ConnectDbTimeOut = Convert.ToInt32(serverConfig.Timeout); }
public SqlProviderInitialiser(SqlServerConfig config) : base(config.ConnectionString) { _config = config; }
public string GetMetaConnectionString(string tenant) { var config = SqlServerConfig.Get(); return(this.GetConnectionString(tenant, config.MetaDatabase)); }
public string GetReportUserConnectionString(string tenant, string database = "") { var config = SqlServerConfig.Get(); return(this.GetConnectionString(tenant, database, config.ReportUserId, config.ReportUserPassword)); }