static void Main(string[] args) { var path = args[0]; OperationsAPI.initAPI(); OperationsAPI.StageListPath = @"\Configs\ConnectStageList.xml"; OperationsAPI.ConfigPath = @"\Configs\ConnectConfig.xml"; var globalConf = AsyncReplicaOperations.StageConnectSettings.getInstance(); var localConf = new GroupSettings(path); if (!localConf.isValid) { return; } foreach (RuntimeRegionSettings regionSetting in localConf.EntitiesList) { SqlConnection sqlConnection = new SqlConnection(); try { var sqlConnectionBuilder = new SqlConnectionStringBuilder(); sqlConnectionBuilder.DataSource = globalConf.FindId(regionSetting.RegionId).ServerName; sqlConnectionBuilder.InitialCatalog = globalConf.FindId(regionSetting.RegionId).StageDBName; sqlConnectionBuilder.IntegratedSecurity = true; sqlConnection = new SqlConnection(sqlConnectionBuilder.ToString()); if (!SqlConnectionChecker.checkConnection(sqlConnection)) { throw new Exception("Невозможно подключиться к региону " + regionSetting.RegionId); } var command = new SqlCommand("select FILEPATHSAVE,FILEPATHLOAD from REPLICAS", sqlConnection); sqlConnection.Open(); using (var reader = command.ExecuteReader(System.Data.CommandBehavior.CloseConnection)) { while (reader.Read()) { var flushPath = reader.GetString(0); FlushFolder(flushPath); Console.WriteLine(string.Format("[MESSAGE] {0:HH:mm:ss} Папка {1} успешно очищена", DateTime.Now, flushPath)); flushPath = reader.GetString(1); FlushFolder(flushPath); Console.WriteLine(string.Format("[MESSAGE] {0:HH:mm:ss} Папка {1} успешно очищена", DateTime.Now, flushPath)); } } } catch (Exception e) { Console.WriteLine(string.Format("[ERROR] {0:HH:mm:ss} {1}", DateTime.Now, e.Message)); } finally { if (sqlConnection.State == System.Data.ConnectionState.Open) { sqlConnection.Close(); } } } }
static void Main(string[] args) { List <string> errorList = new List <string>(); try { OperationsAPI.initAPI(); OperationsAPI.StageListPath = @"\Configs\ConnectStageList.xml"; Console.WriteLine("Начинается проверка..."); var globalConf = StageConnectSettings.getInstance(); if (globalConf.isValid) { foreach (RegionSetting globalSetting in globalConf.EntitiesList) { var connectionBuilder = new SqlConnectionStringBuilder(); connectionBuilder.DataSource = globalSetting.ServerName; connectionBuilder.InitialCatalog = globalSetting.StageDBName; connectionBuilder.IntegratedSecurity = true; connectionBuilder.ConnectTimeout = 5; connectionBuilder.ConnectRetryCount = 1; if (!SqlConnectionChecker.checkConnection(new SqlConnection(connectionBuilder.ToString()))) { errorList.Add(globalSetting.RegionId); } } if (errorList.Count > 0) { Console.WriteLine("Обнаружены ошибки при валидации:"); foreach (string item in errorList) { Console.WriteLine(string.Format("Регион {0} не валиден. Проверьте настройки соединения", item)); } } else { Console.WriteLine("Не обнаружены ошибки при валидации."); } } else { throw new Exception("Файл конфигурации не валиден"); } } catch (Exception e) { Console.WriteLine("Произошла следующая ошибка: " + e.Message); } finally { Console.ReadKey(); } }