public IActionResult UpdateSkill(Guid skillId, SkillForManipulationModel skill) { var skillFromRepo = _skillsRepository.GetSkill(skillId); if (skillFromRepo == null) { var skillToAdd = _mapper.Map <Entities.Skill>(skill); skillToAdd.Id = skillId; _skillsRepository.AddSkill(skillToAdd); _skillsRepository.Save(); var skillToReturn = _mapper.Map <SkillModel>(skillToAdd); return(CreatedAtRoute("GetSkill", new { skillId = skillToReturn.Id }, skillToReturn)); } // map the entity to a SkillForManipulationModel // apply the updated field values to that dto // map the SkillForManipulationModel back to an entity _mapper.Map(skill, skillFromRepo); _skillsRepository.UpdateSkill(skillFromRepo); _skillsRepository.Save(); return(NoContent()); }
public ActionResult <SkillModel> CreateSkill(SkillForManipulationModel skill) { var skillEntity = _mapper.Map <Entities.Skill>(skill); _skillsRepository.AddSkill(skillEntity); _skillsRepository.Save(); var skillToReturn = _mapper.Map <SkillModel>(skillEntity); return(CreatedAtRoute("GetSkill", new { skillId = skillToReturn.Id }, skillToReturn)); }