public async Task <ActionResult <PersonResource> > UpdatePerson(int id, [FromBody] SavePersonResource savePersonResource) { var validator = new SavePersonResourceValidator(); var validationResult = await validator.ValidateAsync(savePersonResource); var requestIsInvalid = id == 0 || !validationResult.IsValid; if (requestIsInvalid) { return(BadRequest(validationResult.Errors)); // this needs refining, but for demo it is ok } var personToBeUpdate = await _personService.GetById(id); if (personToBeUpdate == null) { return(NotFound()); } var person = _mapper.Map <SavePersonResource, Person>(savePersonResource); await _personService.Update(personToBeUpdate, person); var updatedPerson = await _personService.GetById(id); var updatedPersonResource = _mapper.Map <Person, PersonResource>(updatedPerson); return(Ok(updatedPersonResource)); }
public async Task <ActionResult <PersonResource> > UpdatePerson([FromBody] SavePersonResource savePersonResource) { //Model dogrulama kontrolü yapılıyor. var validator = new SavePersonResourceValidator(); var validationResult = await validator.ValidateAsync(savePersonResource); if (!validationResult.IsValid) { return(BadRequest(validationResult.Errors)); // this needs refining, but for demo it is ok } //güncellenecek kişi bulunuyor var personToBeUpdated = await _personService.GetPersonById(savePersonResource.Id); //kişi bulunamadıysa hata dönüyor if (personToBeUpdated == null) { return(NotFound()); } //AutoMapper var person = _mapper.Map <SavePersonResource, PersonInformation>(savePersonResource); //Kişi güncelleniyor await _personService.UpdatePerson(personToBeUpdated, person); //güncellenen kişi getiriliyor var updatedPerson = await _personService.GetPersonById(savePersonResource.Id); //Getirilen kisi autoMapper ile verileri esleniyor ve response'da bu veriler dönülüyor var updatedPersonResource = _mapper.Map <PersonInformation, PersonResource>(updatedPerson); return(Ok(updatedPersonResource)); }
public async Task <ActionResult <PersonResource> > CreatePerson([FromBody] SavePersonResource savePersonResource) { var validator = new SavePersonResourceValidator(); var validationResult = await validator.ValidateAsync(savePersonResource); if (!validationResult.IsValid) { return(BadRequest(validationResult.Errors)); // this needs refining, but for demo it is ok } var personToCreate = _mapper.Map <SavePersonResource, Person>(savePersonResource); var newPerson = await _personService.CreatePerson(personToCreate); var person = await _personService.GetById(newPerson.Id); var personResource = _mapper.Map <Person, PersonResource>(person); return(Ok(personResource)); }
public async Task <ActionResult <PersonResource> > CreatePerson([FromBody] SavePersonResource savePersonResource) { //Model dogrulama kontrolü yapılıyor. var validator = new SavePersonResourceValidator(); var validationResult = await validator.ValidateAsync(savePersonResource); if (!validationResult.IsValid) { return(BadRequest(validationResult.Errors)); } //AutoMapper var personToCreate = _mapper.Map <SavePersonResource, PersonInformation>(savePersonResource); //kisi ekleniyor var newPerson = await _personService.CreatePerson(personToCreate); //eklenen kisi cagırılıyor var person = await _personService.GetPersonById(newPerson.Id); //Getirilen kisi autoMapper ile verileri esleniyor ve response'da bu veriler dönülüyor var personResource = _mapper.Map <PersonInformation, PersonResource>(person); return(Ok(personResource)); }