public void ReturnInvalidIfNotValidSqlConnectionString() { //Arrange var connectionString = "foo"; string provider = "System.Data.SqlClient"; DbProviderFactory factory = DbProviderFactories.GetFactory(provider); string result = ""; var ex = new Exception(); //Act try { var dalfactory = new ConnectionStringFactory(connectionString); result = dalfactory.Create(); } catch (System.Exception e) { ex = e; } //Assert Assert.AreNotEqual(new Exception(), ex); Assert.AreNotEqual(string.Empty, ex.Message); Assert.AreEqual(string.Empty, result); }
public void MustReturnNotNullOrEmptyConectionString() { var defaultConnectionString = ConnectionStringFactory.Create(); var connectionStringForTests = ConnectionStringFactory.Create(useTestConnectionString: true); Assert.IsFalse(string.IsNullOrEmpty(defaultConnectionString)); Assert.IsFalse(string.IsNullOrEmpty(connectionStringForTests)); }
public void ReturnValidSameStringOnCreate() { //Arrange var connectionString = "Server=server;Database=database;User Id=user;Password=password"; var factory = new ConnectionStringFactory(connectionString); //Act var result = factory.Create(); //Assert Assert.AreEqual(connectionString, result); }
public static DbContextOptionsBuilder <FacetContext> GetDbContextOptionBuilder(string hostName, string databaseName) { var defaultSettings = new Dictionary <string, string> { { "QueryBuilderSetting:Store:Host", hostName }, { "QueryBuilderSetting:Store:Database", databaseName } }; var connectionString = ConnectionStringFactory.Create(defaultSettings); var optionsBuilder = new DbContextOptionsBuilder <FacetContext>(); optionsBuilder.UseNpgsql(connectionString); return(optionsBuilder); }
public void ConfigureHangFire(IAppBuilder app, IContainer container) { var factory = new ConnectionStringFactory(); GlobalConfiguration.Configuration.UseSqlServerStorage(factory.Create()); GlobalConfiguration.Configuration.UseActivator(new ContainerJobActivator(container)); app.UseHangfireDashboard(); app.UseHangfireServer(); RecurringJob.AddOrUpdate <RedditUnreadMessagesReader>("Bot_UnreadMessageReader", x => x.ReadUnreadComments(), Cron.Minutely); RecurringJob.AddOrUpdate <RedditUnreadMessagesReader>("Bot_UnreadPrivateMessages", x => x.ReadUnreadPrivateMessages(), Cron.Minutely); RecurringJob.AddOrUpdate <RemindRequestProcessor>("Bot_RemindRequestProcessor", x => x.Process(), Cron.MinuteInterval(5)); RecurringJob.AddOrUpdate <AutoPopularCoinAdder>("AutoAdder_PopularCoins", x => x.AutoAddPopularCoins(200), Cron.Daily(1)); }
/// <summary> /// 根据访问模式获取连接字符串 /// </summary> /// <param name="accessMode">访问模式</param> /// <param name="key">键,如果不为空,则会按取模分区</param> /// <returns>连接字符串</returns> private string GetConnectionString(AccessMode accessMode = AccessMode.MASTER, string key = null) { RedisConnectionInfo connInfo = ConnectionStringFactory.Create(UtilTool.CurrEnvironmentType); string[] conns = accessMode == AccessMode.MASTER || connInfo.SlaveConnectionStrings.IsNullOrLength0() ? connInfo.MasterConnectionStrings : connInfo.SlaveConnectionStrings; if (conns.IsNullOrLength0()) { return(null); } if (string.IsNullOrWhiteSpace(key) || conns.Length == 1) { return(conns[0]); } return(conns[Hash.GenerateHashCode(key) % conns.Length]); }
public SettingsForDependencies() { ConnectionString = ConnectionStringFactory.Create(); }
/// <summary> /// 初始化WMS连接字符串 /// </summary> public static void InitConnList() { //获取连接字符串是否成功 bool getConnectionSuccess = false; //获取连接字符串次数 int getConnectionCounter = 0; while (!getConnectionSuccess && getConnectionCounter <= RETRY_COUNT) { try { logger.InfoFormat("第{0}次获取WMS连接字符串开始...", getConnectionCounter + 1); lock (DbListObj) { IList <WMSConnectionString> lstWmsConnStrings = new List <WMSConnectionString>(); IList <IConnectionString> connStringDefinitions = ConnectionStringFactory.Create(WMSConnStringCreator.Create()) .GetConnectionStrings(); foreach (IConnectionString connStringDefinition in connStringDefinitions) { lstWmsConnStrings.Add(connStringDefinition as WMSConnectionString); } if (lstWmsConnStrings.Count == 0) { throw new Exception("没有要使用的WMS字符串.WMS数据库连接表查询异常"); } lstWMSConnStrings = lstWmsConnStrings; //日志 if (logger.IsInfoEnabled) { var stringBuilder = new StringBuilder(); stringBuilder.Append(string.Format("WMSConnectionString初始化完成,共有数据库连接字符串:{0}个", lstWMSConnStrings.Count)); foreach (WMSConnectionString databaseModel in lstWMSConnStrings) { stringBuilder.AppendLine(databaseModel.ToString()); } logger.Info(stringBuilder.ToString()); } } getConnectionSuccess = true; } catch (Exception ex) { logger.Error(ex.Message, ex); Thread.Sleep(500); getConnectionCounter++; } } foreach (WMSConnectionString wmsConnString in lstWMSConnStrings) { if (!connStringCache.ContainsKey(wmsConnString.Name)) { connStringCache.Add(wmsConnString.Name, wmsConnString.ConnectionString); } if (!providerNameCache.ContainsKey(wmsConnString.Name)) { providerNameCache.Add(wmsConnString.Name, wmsConnString.ProviderName); } if (!string.IsNullOrEmpty(wmsConnString.WarehouseId)) { if (wmsConnString.DatabaseType == DatabaseType.Execute && !warehouseIdCache.ContainsKey(wmsConnString.WarehouseId)) { warehouseIdCache.Add(wmsConnString.WarehouseId, wmsConnString.Name); } if (wmsConnString.DatabaseType == DatabaseType.Readonly && !warehouseIdCacheReadonly.ContainsKey(wmsConnString.WarehouseId)) { warehouseIdCacheReadonly.Add(wmsConnString.WarehouseId, wmsConnString.Name); } } } }
protected static void SetTestSettings() { ResolverRoot.Settings.ConnectionString = ConnectionStringFactory.Create(useTestConnectionString: true); }
public void TestCreatesAnalysisServicesConnectionString() { var actual = _sut.Create("asazure://"); Assert.IsInstanceOfType(actual, typeof(AnalysisServicesConnectionString)); }