public IActionResult Register([FromBody] RegisterPayload registerPayload) { try { var existingUserWithEmail = _db.Users.Any(u => u.Email == registerPayload.Email); if (existingUserWithEmail == false) { _db.Users.Add(new User { FirstName = registerPayload.FirstName, LastName = registerPayload.LastName, Email = registerPayload.Email, PasswordHash = BC.HashPassword(registerPayload.Password), Gender = registerPayload.Gender, IsDeleted = false }); _db.SaveChanges(); return(Ok(new { status = true, message = "User was registered with success!" })); } else { return(new StatusCodeResult(StatusCodes.Status409Conflict)); } } catch { return(new StatusCodeResult(StatusCodes.Status400BadRequest)); } }
public async Task <IActionResult> Register([FromBody] RegisterPayload registerPayload) { try { var existingUserWithMail = _db.Users .Any(u => u.Email == registerPayload.Email); if (existingUserWithMail) { return(BadRequest(new { status = false, message = "Email already exists" })); } var userToCreate = new User { Email = registerPayload.Email, FirstName = registerPayload.FirstName, LastName = registerPayload.LastName, Gender = registerPayload.Gender, PasswordHash = BC.HashPassword(registerPayload.Password), Role = "SimpleUser", }; _db.Users.Add(userToCreate); _db.SaveChanges(); return(Ok(new { status = true, user = userToCreate })); } catch (Exception) { return(new StatusCodeResult(StatusCodes.Status500InternalServerError)); } }
public ActionResult <User> Register([FromBody] RegisterPayload registerPayload) { try { var existingUser = _db.Users.Any(u => u.Email == registerPayload.Email); if (existingUser) { return(new JsonResult(new { status = "false", message = "An account with this email already exists" })); } var userToCreate = new User { Email = registerPayload.Email, FirstName = registerPayload.FirstName, LastName = registerPayload.LastName, PasswordHash = BC.HashPassword(registerPayload.Password), Gender = registerPayload.Gender, }; _db.Users.Add(userToCreate); _db.SaveChanges(); return(new JsonResult(new { status = true, user = userToCreate })); } catch (Exception) { return(new StatusCodeResult(StatusCodes.Status500InternalServerError)); } }
public async Task <ActionResult <AccountViewModel> > Register([FromBody] RegisterPayload reg) { try { var res = await auth.RegisterAsync(reg); return(Ok(res)); } catch (AuthException ex) { return(BadRequest(ex.Message)); } }
public async Task <AccountViewModel> RegisterAsync(RegisterPayload payload) { var appUser = new Models.ApplicationUser { UserName = payload.Email, Email = payload.Email }; var res = await userManager.CreateAsync(appUser, payload.Password); if (!res.Succeeded) { throw new AuthException(res.Errors.FirstOrDefault().Description); } var user = userRepository.CreateNew(new Core.Data.Models.User { DateCreated = DateTime.Now, Email = payload.Email, Name = payload.Name }); appUser.UserID = user.Id; await userManager.UpdateAsync(appUser); return(new AccountViewModel { Email = user.Email, Name = user.Name, UserId = user.Id }); }
/// <summary> /// Register a user to a managed lab /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='userName'> /// The name of the user. /// </param> /// <param name='registerPayload'> /// Represents payload for Register action. /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task RegisterAsync(this IGlobalUsersOperations operations, string userName, RegisterPayload registerPayload, CancellationToken cancellationToken = default(CancellationToken)) { (await operations.RegisterWithHttpMessagesAsync(userName, registerPayload, null, cancellationToken).ConfigureAwait(false)).Dispose(); }
/// <summary> /// Register a user to a managed lab /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='userName'> /// The name of the user. /// </param> /// <param name='registerPayload'> /// Represents payload for Register action. /// </param> public static void Register(this IGlobalUsersOperations operations, string userName, RegisterPayload registerPayload) { operations.RegisterAsync(userName, registerPayload).GetAwaiter().GetResult(); }