Bit.Api.Controllers.AccountsController.PostDelete C# (CSharp) Method

PostDelete() private method

private PostDelete ( [ model ) : System.Threading.Tasks.Task
model [
return System.Threading.Tasks.Task
        public async Task PostDelete([FromBody]DeleteAccountRequestModel model)
        {
            var user = _currentContext.User;
            if(!await _userManager.CheckPasswordAsync(user, model.MasterPasswordHash))
            {
                ModelState.AddModelError("MasterPasswordHash", "Invalid password.");
                await Task.Delay(2000);
            }
            else
            {
                var result = await _userService.DeleteAsync(user);
                if(result.Succeeded)
                {
                    return;
                }

                foreach(var error in result.Errors)
                {
                    ModelState.AddModelError(string.Empty, error.Description);
                }
            }

            throw new BadRequestException(ModelState);
        }
    }