Skip to main content
 首页 » 编程设计

c#之使用usings在asp中发送电子邮件

2024年02月01日30daizhj

我的网站上有一个电子邮件表单,效果很好。我唯一想做的就是添加 usings 以获得更好的编码,最好的方法是什么?我使用的代码如下:

            try 
            { 
            //create message 
            MailMessage msg = new MailMessage(); 
            msg.To.Add(txtTo.Text); 
            msg.From = new MailAddress(txtFrom.Text); 
            msg.Subject = string.Format("Van: " + txtName.Text + " | Email: " + txtFrom.Text + " | Onderwerp: " + txtSubject.Text); 
            msg.Body = txtBericht.Text; 
 
            SmtpClient smtp = new SmtpClient(""); 
            smtp.Host = "smtp.live.com"; 
            smtp.Port = 587; 
            smtp.EnableSsl = true; 
 
            smtp.Credentials = new NetworkCredential("emailaddress", "pass"); 
 
                smtp.Send(msg); 
                ClearTextboxes(); 
                lblError.ForeColor = Color.Green; 
                lblError.Text = "Het verzenden van uw e-mail is gelukt!"; 
            } 
            catch 
            { 
                lblError.ForeColor = Color.Red; 
                lblError.Text = "Er ging iets mis met het versturen van de email.";  
            } 

如何在此代码上使用 usings? 当我上传我的网站时使用填写我的电子邮件地址和密码是否安全,还是我应该使用其他方法?

提前致谢!

编辑:

我将我的代码更改为以下内容:

  try 
            { 
            //create message 
                using (MailMessage msg = new MailMessage()) 
                { 
 
                     //create message 
            MailMessage msg = new MailMessage(); 
            msg.To.Add(txtTo.Text); 
            msg.From = new MailAddress(txtFrom.Text); 
            msg.Subject = string.Format("Van: " + txtName.Text + " | Email: " + txtFrom.Text + " | Onderwerp: " + txtSubject.Text); 
            msg.Body = txtBericht.Text; 
 
                    using (SmtpClient smtp = new SmtpClient()) 
                    { 
                        smtp.Host = "smtp.live.com"; 
                        smtp.Port = 587; 
                        smtp.EnableSsl = true; 
 
                        smtp.Credentials = new NetworkCredential("emailadress", "pass"); 
 
                        smtp.Send(msg); 
                    } 
                    ClearTextboxes(); 
                    lblError.ForeColor = Color.Green; 
                    lblError.Text = "Het verzenden van uw e-mail is gelukt!"; 
                }           
            } 
            catch 
            { 
                lblError.ForeColor = Color.Red; 
                lblError.Text = "Er ging iets mis met het versturen van de email.";  
            } 

请您参考如下方法:

切勿将身份验证信息放入您的代码中。将它放在您的 web.config 中,并在您需要的地方引用它。如果您更改密码,这还可以避免您在任何使用过它的地方寻找的麻烦。