public async Task <IActionResult> UpdateProfile([FromBody] PersonOutput model) { if (!ModelState.IsValid) { var error = ModelState.Select(x => x.Value.Errors).First(y => y.Count > 0); return(BadRequest(error.First().ErrorMessage)); } var personOutput = await _personService.CreateOrUpdate(model); return(Ok(personOutput)); }
public async Task <PersonOutput> CreateOrUpdate(PersonOutput model) { var entity = await Repository.FirstOrDefaultAsync(x => x.Id == model.Id); if (entity != null) { entity.InjectFrom(model); await Repository.UpdateAsync(entity, true); } var output = await GetPerson <PersonOutput>(model.Id); return(output); }