这是我的代码
for(int i = 0; i < number ; i++)
{
MailAddress to = new MailAddress(iMail.to);
MailAddress from = new MailAddress(iMail.from, iMail.displayName);
string body = iMail.body;
string subject = iMail.sub;
oMail = new MailMessage(from, to);
oMail.Subject = subject;
oMail.Body = body;
oMail.IsBodyHtml = true;
oMail.Priority = MailPriority.Normal;
oMail.Sender = from;
s = new SmtpClient(smtpServer);
if (s != null)
{
s.Send(oMail);
}
oMail.Dispose();
s = null;
}
此循环发送超过 60,000 封电子邮件。但我的问题是,我在某些电子邮件中收到“发送邮件失败”的消息,有时达到 5000 封,有时则少于其余邮件的送达时间。我已经检查了所有这些错误,电子邮件地址是否有效。不知道是什么问题。我真的需要这方面的帮助。
编辑:这是我的异常跟踪
错误 - 发送邮件失败。;内
Ex - System.IO.IOException:无法
从传输中读取数据
连接:net_io_connection已关闭。
在
System.Net.Mail.SmtpReplyReaderFactory.ProcessRead(字节[]
缓冲区、Int32 偏移量、Int32 读取、
布尔 readLine) at
System.Net.Mail.SmtpReplyReaderFactory.ReadLines(SmtpReplyReader
呼叫者,布尔 oneLine) at
System.Net.Mail.SmtpReplyReaderFactory.ReadLine(SmtpReplyReader
呼叫者)在
System.Net.Mail.CheckCommand.Send(SmtpConnection
conn、字符串和响应)位于
System.Net.Mail.MailCommand.Send(SmtpConnection
conn,Byte[] 命令,字符串来自)at
System.Net.Mail.SmtpTransport.SendMail(邮件地址
发件人、邮件地址集合
收件人,字符串deliveryNotify,
SmtpFailedRecipientException&
例外)
好吧,“发送电子邮件失败”应该有更多细节。但有一些因素可能会导致这种情况。
- 对“发件人”地址的限制。如果您使用的地址不同,您的 SMTP 服务可能会阻止某些地址发送。
- SMTP 服务上的防洪措施可能会阻止电子邮件发出。
无论是其中一个错误还是另一个错误,您都需要查看异常和内部异常以获取更多详细信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)