public async Task <ActionResult <RegisterResult> > RegisterAsync([FromForm] RegisterDto registerModel) { var isExist = await _userManager.FindByNameAsync(registerModel.Username); if (isExist != null) { return(BadRequest(new RegisterResult { Errors = new[] { "Username has been used" } })); } var newUser = new ApplicationUser { Id = _generator.NextId(), UserName = registerModel.Username }; var password = EncryptHelper.DecryptWithAES(registerModel.ConfirmPassword); var result = await _userManager.CreateAsync(newUser, password); var result2 = await _userManager.AddToRoleAsync(newUser, "common"); if (result.Succeeded && result2.Succeeded) { return(Created(HttpContext.Request.GetDisplayUrl(), new RegisterResult { Success = true })); } var errors = result.Errors.Select(x => x.Description); return(BadRequest(new RegisterResult { Success = false, Errors = errors })); }
public async Task <IActionResult> AddUser([FromForm] CreateDto create) { var newUser = new ApplicationUser { UserName = create.UserName, Id = _generator.NextId() }; var result = await _userManager.CreateAsync(newUser, create.Password); var result2 = await _userManager.AddToRoleAsync(newUser, create.Role); if (result.Succeeded && result2.Succeeded) { return(Created(HttpContext.Request.GetDisplayUrl(), new { Success = true })); } return(BadRequest(result.Errors)); }