public async Task <ActionResult> Register(RegisterViewModel model) { if (ModelState.IsValid) { //Check if email is unique var user = new MyUser { UserName = model.Email, Password = model.Password, Firstname = model.Firstname, Lastname = model.Lastname, Active = true, EmailVerified = false, Phone = model.Phone, PhoneVerified = false, SecurityStamp = Guid.NewGuid().ToString() }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { try { var userRecord = _userService.GetUser(model.Email); var code = await UserManager.GenerateEmailConfirmationTokenAsync(userRecord.Id); if (Request.Url != null) { var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = userRecord.Id, code }, protocol: Request.Url.Scheme); var message = new MyIdentityMessage { Destination = model.Email, Body = "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>", Subject = "Confirm your account" }; await UserManager.EmailService.SendAsync(message); } AddViewMessage(StandardMessages.CustomMessageInfo, "Registeration successful. We have sent you a confirmation email, please confirm your email address to complete your registeration."); } catch (Exception) { AddViewMessage(StandardMessages.CustomMessageError, "Registeration successful but there was an error sending confirmation email."); } try { await SignInManager.PasswordSignInAsync(model.Email, model.Password, true, shouldLockout : false); } catch (Exception) { // ignored } return(RedirectToAction("Index", "Home")); } AddErrors(result); } return(View(model)); }
public void SendEmail() { MyIdentityMessage message = new MyIdentityMessage() { Destination = "*****@*****.**", Subject = "Test Email", Body = "This is a test mail" }; new SendEmailService(message.Destination, message.Subject, message.Body).SendEmail(); }
public void SendEmail(MyIdentityMessage message) { new SendEmailService(message.Destination, message.Subject, message.Body).SendEmail(); }