public bool UpdateReader(ReaderUpdateDto readerToUpdateDto)
        {
            var readerToUpdate = MapConfig.Mapper.Map <Reader>(readerToUpdateDto);

            _readerContext.Update(readerToUpdate);
            return(Save());
        }
        public IActionResult UpdateReader(int readerId, [FromBody] ReaderUpdateDto updatedReader)
        {
            if (updatedReader == null)
            {
                return(BadRequest(ModelState));
            }

            if (readerId != updatedReader.Id)
            {
                return(BadRequest(ModelState));
            }

            if (!_unitOfWork.ReaderRepository.ReaderExists(readerId))
            {
                ModelState.AddModelError("", "Reader doesn't exist!");
            }

            if (!ModelState.IsValid)
            {
                return(StatusCode(404, ModelState));
            }

            if (!_unitOfWork.ReaderRepository.UpdateReader(updatedReader))
            {
                ModelState.AddModelError("", $"Something went wrong updating the reader " + $"{updatedReader.ReaderFirstName}{updatedReader.ReaderLastName}");
            }

            _unitOfWork.Commit();

            return(NoContent());
        }