/// <summary> /// Verifies whether a it is possible to connect to a database. /// </summary> public bool CanConnect(string databaseType, string connectionString, string server, string database, string login, string password, bool integratedAuth) { // we do not test SqlCE connection if (databaseType.InvariantContains("sqlce")) { return(true); } string providerName; if (string.IsNullOrWhiteSpace(connectionString) == false) { providerName = DbConnectionExtensions.DetectProviderNameFromConnectionString(connectionString); } else if (integratedAuth) { // has to be Sql Server providerName = Constants.DbProviderNames.SqlServer; connectionString = GetIntegratedSecurityDatabaseConnectionString(server, database); } else { connectionString = GetDatabaseConnectionString( server, database, login, password, databaseType, out providerName); } return(DbConnectionExtensions.IsConnectionAvailable(connectionString, providerName)); }
/// <summary> /// Configures a connection string that has been entered manually. /// </summary> /// <param name="connectionString">A connection string.</param> /// <remarks>Has to be either SQL Server or MySql</remarks> public void ConfigureDatabaseConnection(string connectionString) { var provider = DbConnectionExtensions.DetectProviderNameFromConnectionString(connectionString); var providerName = provider.ToString().ToLower().Contains("mysql") ? Constants.DbProviderNames.MySql : Constants.DbProviderNames.SqlServer; SaveConnectionString(connectionString, providerName, _logger); _databaseFactory.Configure(connectionString, providerName); }