private void btnEditUser_Click(object sender, EventArgs e) { //Inputs definitions string username = txtUsername.Text; string password = txtPassword.Text; string name = txtName.Text; string lastname = txtLastname.Text; string email = txtEmail.Text; //Validate inputs #region "ValidateInputs" if (name == null || name == "") { MessageBox.Show("Name can't be empty"); return; } if (lastname == null || lastname == "") { MessageBox.Show("Lastname can't be empty"); return; } if (username == null || username == "") { MessageBox.Show("Username can't be empty"); return; } List <User> registers = UserController.ListByUsername(txtUsername.Text); if (registers.Count > 0) { MessageBox.Show("Username already exists"); return; } if (password.Length < 8) { MessageBox.Show("Password must be must contain 8 character or more"); return; } int countUppercase = 0; foreach (char c in password) { if (Char.IsUpper(c)) { countUppercase++; } } if (countUppercase < 1) { MessageBox.Show("Password must be must contain 1 uppercase at least"); return; } #endregion //Build user DTO User user = new User(); user.Username = txtUsername.Text; user.Name = txtName.Text; user.Lastname = txtLastname.Text; user.Email = txtEmail.Text; UserKeyPair encyptedHash = PasswordSecurity.CreateUserHash(password); user.Password = encyptedHash.HashedPassword; user.Salt = encyptedHash.Salt; user.PasswordRetries = 0; user.MaxRetries = 3; user.IsActive = true; user.IsDeleted = false; UserController.Add(user); }