Exemple #1
0
        public async Task <ActionResult <PersonGetDto> > PostPerson(PersonPostDto personDto)
        {
            try
            {
                var person = _mapper.Map <Person>(personDto);

                _context.Persons.Add(person);
                await _context.SaveChangesAsync();

                var personGetDto = _mapper.Map <PersonGetDto>(person);

                return(CreatedAtAction(nameof(GetPerson), new { id = personGetDto.PersonId }, personGetDto));
            }
            catch (DbUpdateException e)
            {
                if (e.InnerException != null && e.InnerException is SqlException)
                {
                    if (((SqlException)e.InnerException).Number == 2601)
                    {
                        return(BadRequest("No se puede insertar personas duplicadas, revisar documentacion"));
                    }
                }
                return(StatusCode(500));
            }
            catch
            {
                return(StatusCode(500));
            }
        }
Exemple #2
0
        public async Task <PersonDto> Save(PersonPostDto person)
        {
            var personEntity = _mapper.Map <PersonPostDto, Person>(person);

            _unitOfWork.PersonRepository.CreatePerson(personEntity);
            await _unitOfWork.Commit();

            return(_mapper.Map <Person, PersonDto>(personEntity));
        }
Exemple #3
0
 public async Task <PersonDto> Create([FromBody] PersonPostDto person)
 {
     return(await _personService.Save(person));
 }