public void SalvarLogs(Resultados resultados, bool sincronia = false) { ThreadPool.QueueUserWorkItem((state) => { if (resultados == null) { return; } var logRepository = new LogImportacaoRepository(); var logProxy = new LogImportacaoProxy(logRepository) { Sincronia = sincronia }; if (resultados.CursosResult != null) { logProxy.SaveCoursesLogs(resultados.CursosResult); } if (resultados.DisciplinasResult != null) { logProxy.SaveDisciplinesResult(resultados.DisciplinasResult); } if (resultados.AlunosResult != null) { logProxy.SaveAlumnLogs(resultados.AlunosResult); } if (resultados.ProfessoresResult != null) { logProxy.SaveProfessorLogs(resultados.ProfessoresResult); } if (resultados.DisciplinasAlunoResult != null) { logProxy.SaveAlumnDisciplinesLogs(resultados.DisciplinasAlunoResult); } if (resultados.DisciplinasProfessorResult != null) { logProxy.SaveProfessorDisciplinesLogs(resultados.DisciplinasProfessorResult); } logRepository.Dispose(); if (CanLog) { System.Console.WriteLine("Logs salvos"); } System.GC.Collect(); }); }
protected void Importar() { AppConfigurationFactory.Refresh(_AppConfiguration); _ServiceBuilder .AddConfiguration(_AppConfiguration) .Build(); _Controller .AddServiceBuilder(_ServiceBuilder) .AddConfiguration(_AppConfiguration); _Controller.ConfigureMoodleCache(); var professores = _Controller.GetProfessores(); var alunos = _Controller.GetAlunos(); var cursosResult = _Controller.ImportarCursos(); var disciplinaResult = _Controller.ImportarDisciplinas(); var professorResult = _Controller.ImportarProfessores(professores); var professorDisciplinaResult = _Controller.ImportarProfessorDisciplinas(professores); var alunosResult = _Controller.ImportarAlunos(alunos); var alunoDisciplinasResult = _Controller.ImportarAlunoDisciplinas(alunos); var resultados = new Resultados() { CursosResult = cursosResult, DisciplinasResult = disciplinaResult, AlunosResult = alunosResult, ProfessoresResult = professorResult, DisciplinasAlunoResult = alunoDisciplinasResult, DisciplinasProfessorResult = professorDisciplinaResult }; _Controller.SalvarLogs(resultados); }