protected void CreateUser_Click(object sender, EventArgs e) { string userName = UserName.Text; try { User u = new User(userName) { UserName = userName }; IdentityConfig.Users.Create(u); IdentityConfig.Secrets.Create(new UserSecret(userName, Password.Text)); IdentityConfig.Logins.Add(new UserLogin(u.Id, IdentityConfig.LocalLoginProvider, userName)); Context.SignIn(u.Id, new Claim[] { }, isPersistent: false); IdentityConfig.RedirectToReturnUrl(Request.QueryString["ReturnUrl"], Response); } catch (DbEntityValidationException ex) { ErrorMessage.Text = "User name already exists:" + ex.EntityValidationErrors.First().ValidationErrors.First().ErrorMessage; } }
private async Task CreateAndLoginUserAsync() { ClaimsIdentity id = await Context.GetExternalIdentity(); if (id == null) { ModelState.AddModelError(String.Empty, "There was an error processing this request."); return; } try { var user = new User(userName.Text); if (IdentityConfig.Users.Create(user)) { IdentityConfig.Logins.Add(new UserLogin(user.Id, ProviderName, ProviderAccountKey)); Context.SignIn(user.Id, id.Claims, isPersistent: false); IdentityConfig.RedirectToReturnUrl(Request.QueryString["ReturnUrl"], Response); } } catch (DbEntityValidationException e) { ModelState.AddModelError("", e.EntityValidationErrors.First().ValidationErrors.First().ErrorMessage); } }