public void SaveDistribution() { List <Distribution> saveDistr = new List <Distribution>(); foreach (DistributionVM dvm in sourceDistr) { Distribution dst = new Distribution(dvm.Id, dvm.ComputerID, dvm.NsName, dvm.UserID, dvm.UserFio); saveDistr.Add(dst); } var saveThread = Task.Factory.StartNew(() => { core.SaveDistribution(saveDistr); AllSaved?.Invoke(); }); }