private async void InsertAdmin(Admin admin) { using (var context = new HUBEI_DBContext(new DbContextOptions <HUBEI_DBContext>())) { context.Add(admin); await context.SaveChangesAsync(); } }
/// <summary> /// PUTS(UPDATES) a project in the database. /// </summary> /// <param name="model"></param> /// <returns>Projects Main List Backoffice view</returns> /// <remarks></remarks> public async Task <IActionResult> EditProject(BOProjectViewModel viewModel) { if (!User.Identity.IsAuthenticated) { TempData["Got-Error"] = "true"; TempData["Login-Message"] = "É necessário iniciar sessão"; return(RedirectToAction("Index", "Home")); } if (viewModel.Report != null) { using (var memoryStream = new MemoryStream()) { await viewModel.Report.CopyToAsync(memoryStream); viewModel.Project.Report = memoryStream.ToArray(); } } viewModel.Project.ProjectAdvisor = _context.ProjectAdvisor.Where(pa => pa.IdProject == viewModel.Project.IdProject).ToList(); foreach (var advisor in viewModel.Project.ProjectAdvisor) { _context.ProjectAdvisor.Remove(advisor); await _context.SaveChangesAsync(); } foreach (var mentor in viewModel.Mentors) { if (mentor.Selected) { var advisor = new ProjectAdvisor { IdProject = viewModel.Project.IdProject, IdSchoolMentor = mentor.SchoolMentor.IdSchoolMentor }; await _context.ProjectAdvisor.AddAsync(advisor); await _context.SaveChangesAsync(); } } viewModel.Project.ProjectAdvisor = new List <ProjectAdvisor>(); if (viewModel.Attachments != null) { if (viewModel.Attachments.Count() > 0) { viewModel.Project.ProjectDocument = _context.ProjectDocument.Where(pd => pd.IdProject == viewModel.Project.IdProject).ToList(); foreach (var document in viewModel.Project.ProjectDocument) { _context.ProjectDocument.Remove(document); await _context.SaveChangesAsync(); } foreach (var formFile in viewModel.Attachments) { if (formFile.Length > 0) { using (var memoryStream = new MemoryStream()) { await formFile.CopyToAsync(memoryStream); var document = new ProjectDocument { IdProject = viewModel.Project.IdProject, Document = memoryStream.ToArray(), FileName = formFile.FileName, FileSize = Convert.ToDouble(Convert.ToDecimal(formFile.Length) / 1024m / 1024m) }; await _context.ProjectDocument.AddAsync(document); await _context.SaveChangesAsync(); } } } viewModel.Project.ProjectDocument = new List <ProjectDocument>(); } } _context.Project.Update(viewModel.Project); _context.SaveChanges(); TempData["HasAlert"] = "true"; TempData["AlertMessage"] = "Project edited successfully."; return(RedirectToAction("Projects", "BackOffice")); }