我用下面的代码从我的Windows应用程序发送电子邮件:电子邮件不会发送到hotmail.com和live.com
public bool SendEmail(string to, string subject, string body, bool isHtml, List<string> bcc, List<string> cc, string fullname)
{
var from = "[email protected]";
var name = "MyName";
var toAddress = new MailAddress(to, fullname);
var fromAddress = new MailAddress(from, name);
var message = new MailMessage(fromAddress, toAddress)
{
Subject = subject,
Body = body,
IsBodyHtml = isHtml
};
if (bcc != null && bcc.Any())
foreach (var bccItem in bcc)
message.Bcc.Add(bccItem);
if (cc != null && cc.Any())
foreach (var ccItem in cc)
message.CC.Add(ccItem);
var key = "password";
var domain = "webmail.mydomain.com";
var smtp = new SmtpClient
{
Host = domain,
Port = 587,
DeliveryMethod = SmtpDeliveryMethod.Network,
UseDefaultCredentials = false,
Credentials = new NetworkCredential(from, key)
};
try
{
smtp.Send(message);
return true;
}
catch (Exception exception)
{
Console.Write(exception);
return false;
}
}
它工作正常,但不能与hotmail.com和现场。 com和outlook.com。当我尝试发送电子邮件给[email protected]时,该过程运行良好,但[email protected]未收到发送的电子邮件,即使在垃圾文件夹中也是如此。有什么问题?我的错误是什么?
其他域名(Gmail,Yahoo等)的电子邮件收件人是否可以正确接收电子邮件? –
是的,它适用于Gmail和yahoo –
大致发送了多少封电子邮件?也许你的SMTP服务器暂时被列入黑名单。 – TyCobb