public async Task <ActionResult> Register(RegisterViewModel model) { if (ModelState.IsValid) { var user = new SMSUser { UserName = model.Email, Email = model.Email }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); // 有关如何启用帐户确认和密码重置的详细信息,请访问 http://go.microsoft.com/fwlink/?LinkID=320771 // 发送包含此链接的电子邮件 // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id); // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); // await UserManager.SendEmailAsync(user.Id, "确认你的帐户", "请通过单击 <a href=\"" + callbackUrl + "\">這裏</a>来确认你的帐户"); return(RedirectToAction("Index", "Home")); } AddErrors(result); } // 如果我们进行到这一步时某个地方出错,则重新显示表单 return(View(model)); }
public async Task <ActionResult> Register(RegisterViewModel model) { if (ModelState.IsValid) { var user = new SMSUser { UserName = model.Username, Email = model.Email, FirstName = model.FirstName, LastName = model.LastName, PhoneNumber = model.PhoneNumber, CountryID = model.CountryID, StateID = model.StateID, CityID = model.CityID }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { await UserManager.AddToRoleAsync(user.Id, "User"); await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=320771 // Send an email with this link // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id); // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>"); return(RedirectToAction("Index", "Home")); } AddErrors(result); } // If we got this far, something failed, redisplay form RegisterViewModel registerViewModel = new RegisterViewModel(); registerViewModel.Country = Countries.GetByID(166); registerViewModel.CountriesList = Countries.GetAll(); return(View(registerViewModel)); }
private async Task <PortalActionResult> CreateUserAndAddUserAsPortalAdminAsync(ZohoContact contact, int companyId) { bool isSuccess = false; string message; var now = DateTime.Now; var tempuser = new ApplicationUser() { UserName = contact.Email, Email = contact.Email, LastPasswordChangedDate = now, CreationDate = now, CompanyId = companyId }; var result = await _userManager.CreateAsync(tempuser, _tempPassword); if (result.Succeeded) { var roleResult = await _userManager.AddToRoleAsync(tempuser, DefaultRoleName); var userContact = await _userManager.CreateUserZohoContactAsync(new UserZohoContact { UserId = tempuser.Id, ZohoContactId = contact.ContactID }); if (roleResult.Succeeded) { isSuccess = true; message = $"User Created for:{tempuser.UserName}"; } else { message = roleResult.ToString(); } } else { message = result.ToString(); } return(new PortalActionResult { IsSuccess = isSuccess, Message = message }); }