public static void SeedUsers(HeroicallyRecipesDbContext context) { if (context.Users.Count() > 1) { return; } string[] usernames = new string[] { "jhonDoe", "batman" }; string[] passwords = new string[] { "jhonDoe123", "batman123" }; string[] emails = new string[] { "*****@*****.**", "*****@*****.**" }; PasswordHasher hasher = new PasswordHasher(); var userManager = new UserManager<User>(new UserStore<User>(context)); for (int i = 0; i < usernames.Length; i++) { var user = new User { UserName = emails[i], Email = emails[i], NickName = emails[i], PasswordHash = hasher.HashPassword(passwords[i]), AvatarUrl = "/images/defaultAvatar1.png" }; context.Users.Add(user); context.SaveChanges(); userManager.UpdateSecurityStamp(user.Id); } }
public async Task<ActionResult> ExternalLoginConfirmation(ExternalLoginConfirmationViewModel model, string returnUrl) { if (this.User.Identity.IsAuthenticated) { return this.RedirectToAction("Index", "Manage"); } if (this.ModelState.IsValid) { // Get the information about the user from the external login provider var info = await this.AuthenticationManager.GetExternalLoginInfoAsync(); if (info == null) { return this.View("ExternalLoginFailure"); } var user = new User { UserName = model.Email, Email = model.Email }; var result = await this.UserManager.CreateAsync(user); if (result.Succeeded) { result = await this.UserManager.AddLoginAsync(user.Id, info.Login); if (result.Succeeded) { await this.SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); return this.RedirectToLocal(returnUrl); } } this.AddErrors(result); } ViewBag.ReturnUrl = returnUrl; return this.View(model); }
public async Task<ActionResult> Register(RegisterViewModel model) { if (this.ModelState.IsValid) { var user = new User { UserName = model.Email, NickName = model.NickName, Email = model.Email }; user.AvatarUrl = "/images/defaultAvatar" + this.rand.Next(1, 4) + ".png"; var result = await this.UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { await this.SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); return this.RedirectToAction("Index", "Home"); } this.AddErrors(result); } // If we got this far, something failed, redisplay form return this.View(model); }