示例#1
0
        public async Task <AccountResponse> ChangeUsernameAsync(User user, UsernameChangeViewModel usernameChangeViewModel)
        {
            if (user != null)
            {
                if (usernameChangeViewModel.Username != null && usernameChangeViewModel.ConfirmUsername != null)
                {
                    if (usernameChangeViewModel.Username.Equals(usernameChangeViewModel.ConfirmUsername))
                    {
                        IdentityResult result = await userManager.SetUserNameAsync(user, usernameChangeViewModel.Username);

                        if (result.Succeeded)
                        {
                            return(new AccountResponse {
                                ResponseStatus = Status.Success, Message = "The username was changed"
                            });
                        }
                        else
                        {
                            return(new AccountResponse {
                                ResponseStatus = Status.Error, Message = "Username could not be changed"
                            });
                        }
                    }
                    return(new AccountResponse {
                        ResponseStatus = Status.Error, Message = "Usernames do not match"
                    });
                }
                return(new AccountResponse {
                    ResponseStatus = Status.Error, Message = "Request is missing some data"
                });
            }
            return(new AccountResponse {
                ResponseStatus = Status.Error, Message = "User not found"
            });
        }
示例#2
0
        public async Task <IActionResult> ChangeUsername([FromBody] UsernameChangeViewModel usernameChangeViewModel)
        {
            if (usernameChangeViewModel != null)
            {
                var user = await userManager.GetUserAsync(HttpContext.User);

                AccountResponse response = await accountServices.ChangeUsernameAsync(user, usernameChangeViewModel);

                if (response.ResponseStatus == Status.Success)
                {
                    return(Ok(response.Message));
                }
                else
                {
                    return(StatusCode(StatusCodes.Status400BadRequest, response.Message));
                }
            }
            return(StatusCode(StatusCodes.Status400BadRequest));
        }