除了一个用户的电子邮件地址(每个人都有相同的" @ OurCompany"域名)之外,我对此代码没有任何问题。
我已经通过Outlook向他发送了一封电子邮件,它很顺利。运行代码时不会抛出任何异常,但我们的SysAdmin说我尝试发送的电子邮件甚至不会给服务器发送电子邮件。
public static void SendEmail(string sTo, string sSubject, string sBody)
{
using (MailMessage message = new MailMessage(new MailAddress(ConfigurationManager.AppSettings["FromUser"], "User"), new MailAddress(sTo))
{
Subject = sSubject,
Body = sBody
})
{
using (var client = new SmtpClient(ConfigurationManager.AppSettings["SMTPGridName"]))
{
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.Port = int.Parse(ConfigurationManager.AppSettings["SmtpPort"]);
client.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["EmailCredential"],
ConfigurationManager.AppSettings["EmailPassword"]);
client.EnableSsl = true;
client.Send(message);
}
}
}
答案 0 :(得分:0)
这是一个简单的方法,可以为您节省很多麻烦
public static void SendEmail(string sTo, string subject, string body)
{
var Port = int.Parse(ConfigurationManager.AppSettings["SmtpPort"]);
using (var client = new SmtpClient(Your EmailHost, Port))
using (var message = new MailMessage()
{
From = new MailAddress(FromEmail),
Subject = subject,
Body = body
})
{
message.To.Add(sTo);
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["EmailCredential"],
ConfigurationManager.AppSettings["EmailPassword"]);
client.EnableSsl = true;
client.Send(message);
};
}
答案 1 :(得分:0)
事实证明,SendGrid在到达我们的电子邮件服务器之前发送了电子邮件,原因是#34; Bounced Address。" SysAdmin认为电子邮件服务器可能已经在某一点下降,导致电子邮件地址被添加到"不存在"名单。该地址已从列表中删除,现在可以正常使用。
感谢您的建议