public void Map_toDomain_Test() { //Arange var mapper = new SectionMapper(); var expected = new ComparableSection { Order = 1, ScriptId = 1, SectionId = 1, Text = "1", EntityState = EntityState.Unchanged }; var section = new TransferSection { Order = 1, ScriptId = 1, SectionId = 1, Text = "1", EntityState = EntityState.Unchanged }; //Act var actual = mapper.Map(section); //Assert Assert.AreEqual(expected, actual); }
public Section Map(TransferSection transferSection) { if (transferSection == null) { return null; } return new Section { SectionId = transferSection.EntityState == EntityState.Added ? transferSection.Order : transferSection.SectionId, Order = transferSection.Order, Text = transferSection.Text, ScriptId = transferSection.ScriptId, EntityState = transferSection.EntityState }; }
public Section Map(TransferSection transferSection) { if (transferSection == null) { return(null); } return(new Section { SectionId = transferSection.EntityState == EntityState.Added ? transferSection.Order : transferSection.SectionId, Order = transferSection.Order, Text = transferSection.Text, ScriptId = transferSection.ScriptId, EntityState = transferSection.EntityState }); }
private static Boolean ConfirmarTransferencia(TransferSection envConfig) { Console.WriteLine("<<< TRANSFERÊNCIAS CONFIGURADAS >>>"); foreach (TransfersElement item in envConfig.Transfers) { Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Config: {0}", item.Name); WriteLineRG("\t Executar Transferência: ", !item.Disabled); Console.WriteLine(); Console.WriteLine("\t Bulk Copy Timeout: {0}", item.BulkCopyTimeout); Console.WriteLine("\t Bulk Batch Size: {0}", item.BulkBatchSize); WriteLineRG("\t Bulk Table Lock: ", item.TableLock); WriteLineRG("\t Bulk Check Constraints: ", item.CheckConstraints); WriteLineRG("\t Bulk Fire Triggers: ", item.FireTriggers); Console.WriteLine(); Console.WriteLine("\t Tables Count: {0}", item.Tables.Count); Console.WriteLine(new String('-', 80) + Environment.NewLine); } Console.WriteLine("Pressione [ENTER] para CONTINUAR"); return(Console.ReadKey().Key == ConsoleKey.Enter); }
static void Main(string[] args) { //local de armazenamento do log de execução var path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"Log"); if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } _fileName = Path.Combine(path, string.Format("ErroConsole_{0}.txt", DateTime.Now.ToString("yyyyMMdd"))); try { var transferSection = TransferSection.GetSection(); //Se grupo de transferencia foi passado como parametro, executa apenas determinado if (args.Length > 0) { foreach (TransfersElement item in transferSection.Transfers) { item.Disabled = !args.Contains(item.Name); } var confirmarTransferencia = (args.Length > 1 && !(args[1].ToUpper() == "S" || args[1].ToUpper() == "Y")); if (args.Length == 1 || confirmarTransferencia) { if (!ConfirmarTransferencia(transferSection)) { return; } } } else if (args.Length == 0) { //Se não foi passado nenhuma configuração como parametro então deve esperar ok do usuário if (!ConfirmarTransferencia(transferSection)) { return; } } var tempoProcesso = new Stopwatch(); var tempoEtapa = new Stopwatch(); foreach (TransfersElement item in transferSection.Transfers) { //local de armazenamento do log de execução _fileName = Path.Combine(path, string.Format("{0}_{1}.txt", item.Name, DateTime.Now.ToString("yyyyMMdd"))); if (!item.Disabled) { tempoProcesso.Restart(); EscreverLogInfo(item); _transfer = new DataTransfer(item.ConnectionSource, item.ConnectionTarget); if (_transfer.Conectado) { EscreverLogLinha('='); EscreverLog(string.Format("{0} BEGIN Transfer: {1} => {2}", DateTime.Now.ToString("dd.MM.yyyy"), _transfer.DatabaseOrigem, _transfer.DatabaseDestino), ConsoleColor.Blue, false); EscreverLogLinha(); //setando parametros para execucao do bulk var bulkConfig = new DataTransfer.BulkConfig { Options = SqlBulkCopyOptions.KeepIdentity }; if (item.TableLock) { bulkConfig.Options |= SqlBulkCopyOptions.TableLock; } if (item.CheckConstraints) { bulkConfig.Options |= SqlBulkCopyOptions.CheckConstraints; } if (item.FireTriggers) { bulkConfig.Options |= SqlBulkCopyOptions.FireTriggers; } bulkConfig.CopyTimeout = item.BulkCopyTimeout; bulkConfig.BatchSize = item.BulkBatchSize; IniciarTransferencia(item.Tables, bulkConfig); /* * var tasks = new Task[item.Tables.Count]; * for (int i = 0; i < tasks.Count(); i++) * { * tasks[i] = new Task((object element) => * { * IniciarTransferencia((TablesConfigurationElement)element); * }, * item.Tables[i]); * } * Parallel.ForEach(tasks, (t) => * { * t.Start(); * }); * Task.WaitAll(tasks); */ //_transfer.Reseed(); //EscreverMemo("Reseed Identitys: " + tempo.Elapsed.ToString()); //EscreverMemo(new String('-', 80) + Environment.NewLine); } else { EscreverLogErro("FALHA NA CONEXÃO, VERIFIQUE AS CONFIGURAÇÕES"); } tempoProcesso.Stop(); EscreverLogLinha(); EscreverLog($"{DateTime.Now:dd.MM.yyyy} END Transfer. {tempoProcesso.Elapsed}", ConsoleColor.Blue, false); EscreverLogLinha('='); } } } catch (Exception ex) { EscreverLogErro(ex.Message); } finally { if (_transfer != null) { _transfer.Disconnect(); _transfer = null; } } Console.Read(); }