private void SaveProcess(object state) { lock (Lock) { using (var scope1 = Injection.BeginLifetimeScope()) using (var clientProcessRepository = Injection.Resolve <IClientProcessRepository>()) using (var qualityTimeRepository = Injection.Resolve <IQualityTimeRepository>()) { Debug.WriteLine("Process in data base: " + clientProcessRepository.GetList().Count() + "(old)"); foreach (var process in _clientProcesses) { var processUpdate = clientProcessRepository.Get(process); var qualityTime = qualityTimeRepository.Get(process.QualityTime); if (processUpdate == null) { //clientProcessRepository.Save(); if (qualityTime != null) { //qualityTime.ClientProcesses.Add(process); //qualityTimeRepository.Update(qualityTime); //qualityTimeRepository.Save(); process.QualityTime = qualityTime; } clientProcessRepository.Create(process); } else { processUpdate.ProcessTime += process.ProcessTime; if (processUpdate.QualityTime.Id != qualityTime.Id) { process.QualityTime = qualityTime; } } clientProcessRepository.Save(); } _clientProcesses.Clear(); Debug.WriteLine("Process in data base: " + clientProcessRepository.GetList().Count() + "(new)"); } } }
public static void Main(string[] args) { Injection.BeginLifetimeScope(); CreateHostBuilder(args).Build().Run(); }