如何使用使用者管理器在 asp.net 身份中實現密碼重置令牌
-
建立一個名為 MyClasses 的新資料夾,然後建立並新增以下類
public class GmailEmailService:SmtpClient { // Gmail user-name public string UserName { get; set; } public GmailEmailService() : base(ConfigurationManager.AppSettings["GmailHost"], Int32.Parse(ConfigurationManager.AppSettings["GmailPort"])) { //Get values from web.config file: this.UserName = ConfigurationManager.AppSettings["GmailUserName"]; this.EnableSsl = Boolean.Parse(ConfigurationManager.AppSettings["GmailSsl"]); this.UseDefaultCredentials = false; this.Credentials = new System.Net.NetworkCredential(this.UserName, ConfigurationManager.AppSettings["GmailPassword"]); } }
-
配置你的身份類
public async Task SendAsync(IdentityMessage message) { MailMessage email = new MailMessage(new MailAddress("youremailadress@domain.com", "(any subject here)"), new MailAddress(message.Destination)); email.Subject = message.Subject; email.Body = message.Body; email.IsBodyHtml = true; GmailEmailService mailClient = new GmailEmailService(); await mailClient.SendMailAsync(email); }
-
將你的憑據新增到 web.config。我沒有在這部分使用 gmail,因為 gmail 的使用在我的工作場所被阻止,它仍然完美無缺。
<add key="GmailUserName" value="youremail@yourdomain.com"/> <add key="GmailPassword" value="yourPassword"/> <add key="GmailHost" value="yourServer"/> <add key="GmailPort" value="yourPort"/> <add key="GmailSsl" value="chooseTrueOrFalse"/> <!--Smptp Server (confirmations emails)-->
-
對你的帳戶控制器進行必要的更改。新增以下突出顯示的程式碼。
https://i.stack.imgur.com/mJz6k.jpg
https://i.stack.imgur.com/S8jvL.jpg
編譯然後執行。乾杯!