1

如何使此代码发送新生成的密码或用户发送旧密码?

我想出了如何让代码发送电子邮件!发送者不是问题,但接收者才是问题。WhereEmailAdresNaar必须替换为某人放入文本框或其他内容的电子邮件。

public void SendEmail()
    {



        string emailAdresVan = "invoerenSVP";
        string password = "invoerenSVP";


        MailMessage msg = new MailMessage();

        msg.From = new MailAddress(emailAdresVan);
        msg.To.Add(new MailAddress(EmailAdresNaar));
        msg.Subject = Onderwerp;
        msg.Body = Bericht;
        msg.IsBodyHtml = true;


        SmtpClient smtpClient = new SmtpClient("smtp.gmail.com", 587);

        NetworkCredential loginInfo = new NetworkCredential(emailAdresVan, password);


        smtpClient.EnableSsl = true;
        smtpClient.UseDefaultCredentials = true;
        smtpClient.Credentials = loginInfo;

        smtpClient.Send(msg); 

       }
   }
}
4

1 回答 1

1

像这样放置您需要的数据:

msg.From = new MailAddress("support@yoursite.com");
msg.To.Add(new MailAddress(UserEmailTextBox.Text));
msg.Subject = "New Password";
msg.Body = GenerateNewPassword();

和方法的示例GenerateNewPassword(),但是您应该使返回随机生成的新密码更加复杂(您需要谷歌搜索不同的实现变体):

public string GenerateNewPassword()
{
    string new_pass = "";
    // generate new password
    return new_pass;
}

理想情况下,您应该制作另一个类似 的页面PasswordsReset.aspx,并使用某种类型的 向用户发送指向该页面的链接GUID,用户可以在其中自己创建新密码。

于 2013-04-02T13:21:11.543 回答