示例#1
0
        /// <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));
        }
示例#2
0
        /// <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);
        }