public async Task <IActionResult> UpdateGenderByIdAsync(
            [FromRoute] int genderId,
            [FromBody] UpdateGenderRequestDto updateGenderRequestDto,
            CancellationToken token = default)
        {
            try
            {
                var validationResult = await _updateGenderRequestValidator.ValidateAsync(updateGenderRequestDto, token);

                if (!validationResult.IsValid)
                {
                    return(new BadRequestObjectResult(validationResult.Errors.ToValidationErrors()));
                }

                var genderServiceObject = Mapper.Map <GenderServiceObject>(updateGenderRequestDto);
                genderServiceObject.Id = genderId;
                var serviceResult = await _genderService.UpdateGenderByIdAsync(genderServiceObject, token);

                return(new OkObjectResult(Mapper.Map <UpdateGenderResponseDto>(serviceResult)));
            }
            catch (Exception)
            {
                return(new BadRequestResult());
            }
        }