![](/img/trans.png)
[英]Smtp.Send throws no error when reciepent has incorrect email address
[英]C# Smtp.Send not working for specific email address
除了一個用戶的電子郵件地址(每個人都有相同的“ @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);
}
}
}
這是一種可以使您免於頭痛的簡單方法
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);
};
}
原來,SendGrid已將電子郵件丟棄,然后才以“退回地址”為由將其發送到我們的電子郵件服務器。 SysAdmin認為電子郵件服務器可能已關閉,導致電子郵件地址被添加到“不存在”列表中。 該地址已從列表中刪除,現在可以使用。
謝謝你的建議
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.