public async Task CreateUserAsync(SignupPostData signupPostData, DatabaseContext context) { (string password, string salt) = this.GeneratePasswordHash(signupPostData.Password); UserEntity user = new UserEntity() { Login = signupPostData.Username, Password = password, Salt = salt }; await context.AddAsync(user); await context.SaveChangesAsync(); }
public async Task <IActionResult> PostAsync(SignupPostData signupPostData) { signupPostData = new SignupPostData() { Password = signupPostData.Password.Trim(), Username = signupPostData.Username.Trim() }; using var connection = await this.authService.Connect(); var context = new DatabaseContext(connection); bool loginExists = await context.ClipboardUser.AnyAsync(o => o.Login == signupPostData.Username); if (loginExists) { return(this.BadRequest("Username already existent.")); } await this.userSevice.CreateUserAsync(signupPostData, context); await connection.CloseAsync(); return(this.Ok()); }