public async Task <IActionResult> UpdateMediaProfile(MediaProfileDto mediaProfile)
        {
            var userId             = GetUserId();
            var updatedUserInfoDto = await _userInformationService.UpdateMediaProfile(userId, mediaProfile);

            await _unitOfWork.Commit();

            return(Ok(updatedUserInfoDto));
        }
        public async Task <UserInfoDto> UpdateMediaProfile(string id, MediaProfileDto mediaProfile)
        {
            var userInfoModel = await _userInformationRepo.GetOne(id);

            var mediaProps = typeof(MediaProfileDto).GetProperties();

            foreach (var prop in mediaProps)
            {
                var mediaPropValue = typeof(MediaProfileDto).GetProperty(prop.Name)?.GetValue(mediaProfile);
                if (mediaPropValue != null)
                {
                    typeof(UserInformation).GetProperty(prop.Name)?.SetValue(userInfoModel, mediaPropValue);
                }
            }

            return(_mapper.Map <UserInfoDto>(userInfoModel));
        }