public ActionResult Create(CreateCompetenceViewModel newCompetence) { if (!ModelState.IsValid) { return(View(newCompetence)); } var user = _context.Users.Include(u => u.Competences).SingleOrDefault(u => u.Id == newCompetence.UserId); if (user.Competences.Any(x => x.Expertise == newCompetence.Expertise)) { TempData["Message"] = $"{newCompetence.Expertise} is already defined. You may edit the expertise from the list of competences."; TempData["Type"] = "alert-danger"; return(View(newCompetence)); } var c = new Competence { User = user, YearOfExperience = newCompetence.YearOfExperience, Expertise = newCompetence.Expertise }; _context.Competences.Add(c); _context.SaveChanges(); user.Competences.Add(c); _context.SaveChanges(); return(RedirectToAction("Details", "Users", new { id = user.Id })); }
public ActionResult Edit(CreateCompetenceViewModel updateCompetence) { if (!ModelState.IsValid) { return(View(updateCompetence)); } var competence = _context.Competences.Include(c => c.User).SingleOrDefault(c => c.Id == updateCompetence.Id); competence.YearOfExperience = updateCompetence.YearOfExperience; _context.SaveChanges(); return(RedirectToAction("Details", "Users", new{ id = competence.User.Id })); }