public async Task <ActionResult> UpdateAllContractsConfirmed() { var allContracts = Enumerable.Empty <Contract>(); using (var dctx = new MindSageDataModelsContainer()) { allContracts = dctx.Contracts .Include("Licenses.CourseCatalog") .Include("Licenses.TeacherKeys") .ToList(); } var canUpdateContracts = allContracts != null && allContracts.Any(); if (!canUpdateContracts) { return(RedirectToAction("Index")); } // TODO: Handle update to MongoDB error var contractIds = allContracts.Select(it => it.Id.ToString()).Distinct(); var contractRepo = new ContractRepository(); var mongoDBcontracts = (await contractRepo.GetContractsById(contractIds)).ToList(); await updateContracts(contractRepo, allContracts, mongoDBcontracts); await createNewContracts(contractRepo, allContracts, mongoDBcontracts); return(RedirectToAction("Index")); }