public async Task <IHttpActionResult> AddUser(UserCreateModel userModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            string imagePath = "/Files/no-image.png";

            if (userModel.Content != null)
            {
                if (!ImageHelper.IsImage(userModel.Content))
                {
                    return(BadRequest("Image is not valid."));
                }
                imagePath = await SaveImage(userModel.Content);

                var imageSize = userModel.Content.Buffer.Length;
                if (!ImageHelper.IsImageValid(imagePath, imageSize))
                {
                    var imageMappedPath = System.Web.HttpContext.Current.Server.MapPath(imagePath);
                    if (File.Exists(imageMappedPath))
                    {
                        File.Delete(imageMappedPath);
                    }
                    return(BadRequest("Image is not valid."));
                }
            }
            var user = UserHelpers.ConvertUserModelToUser(userModel);

            user.PositionId = userModel.PositionId;
            user.IsActive   = true;
            user.Image      = new Image {
                ImageUrl = imagePath
            };

            var result = await _unitOfWork.UsersManager.CreateAsync(user, userModel.Password);

            _unitOfWork.UsersManager.AddToRole(user.Id, "user");

            var errorResult = GetErrorResult(result);

            return(errorResult ?? Ok(result));
        }