【发布时间】:2019-01-08 10:13:33
【问题描述】:
我有以下代码用于从我的应用程序发送电子邮件:
var config = DeserializeUserConfig(perfilAcesso.GetClientConfigPath() + "Encrypted");
using (SmtpClient client = new SmtpClient())
{
client.Host = config.GetClientSMTP();
client.EnableSsl = true;
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential(config.GetClientEmail(), config.GetClientPassword());
using (MailMessage mail = new MailMessage())
{
mail.Sender = new MailAddress(config.GetClientEmail(), config.GetClientName());
mail.From = new MailAddress(config.GetClientEmail(), config.GetClientCompany());
mail.To.Add(new MailAddress("emailToReceive"));
mail.Subject = "[PME] SOS - Equipamento Parado";
mail.Body = "";
client.Send(mail);
MessageBox.Show("Email enviado com sucesso!");
}
}
我设置了三个可能的 SMTP 主机供用户选择:Gmail ("smtp.gmail.com")、Outlook ("smtp.live.com") 和 Yahoo ("smtp.mail.yahoo.com")。
当我尝试使用 Yahoo 帐户发送电子邮件时,会引发此异常:
System.Net.Mail.SmtpException:邮箱不可用。服务器响应为:未采取请求的邮件操作:邮箱不可用。
我知道在使用 Gmail 和 Outlook 帐户发送电子邮件时,该方法非常有效,因为我尝试了多次。
我做错了什么?任何帮助将不胜感激!
【问题讨论】:
标签: c# email exception smtp yahoo-mail