我无法弄清楚为什么这不起作用的生活
SmtpClient smtp = new SmtpClient
{
Host = "smtp.gmail.com",
Port = 587,
UseDefaultCredentials = false,
DeliveryMethod = SmtpDeliveryMethod.Network,
Credentials = new NetworkCredential("myemail@gmail.com", "myGmailPasswordHere"),
EnableSsl = true,
Timeout = 10000
};
smtp.Send(mail);
Run Code Online (Sandbox Code Playgroud)
我明白了:
SMTP服务器需要安全连接或客户端未经过身份验证.服务器响应为:5.5.1需要身份验证.
我刚刚将EnableSsl指定为true,因此在安全连接方面不应该是问题.
我是从localhost运行的.是的,我输入auth(我的gmail帐户凭据)的用户名和密码是100%正确的.
与我如何让Fiddler捕获请求的常规请求相反localhost,如何阻止它获取特定端口?
自安装IE 9 RC以来,我收到大量的网格请求出现......
http://localhost:2048/V4.0i/Sync/Devices/SDI6BHE6YYAHMR67S32S4MTROU/Endpoints
我尝试将locahost:2048添加到Fiddler过滤器/隐藏以下主机,但这不起作用
这是我的代码
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;
}
Run Code Online (Sandbox Code Playgroud)
这个循环发送超过60,000封电子邮件.但是我的问题是我在一些电子邮件中发送"发送邮件失败"了5000次,而且剩下的时间少了一些时间.我检查了所有那些错误,电子邮件有有效的电子邮件地址.不知道是什么问题.我真的需要帮助.
编辑:这是我的异常跟踪
错误 - 发送邮件失败.Inner Ex - System.IO.IOException:无法从传输连接中读取数据:net_io_connectionclosed.在System.Net.Mail.SmtpReplyReaderFactory.ProcessRead(字节[]缓冲液,的Int32偏移的Int32读,布尔的readLine)在System.Net.Mail.SmtpReplyReaderFactory.ReadLines(SmtpReplyReader呼叫者,布尔ONELINE)在System.Net.Mail.SmtpReplyReaderFactory .ReadLine(SmtpReplyReader呼叫者)在System.Net.Mail.CheckCommand.Send在System.Net在System.Net.Mail.MailCommand.Send(SmtpConnection康恩,字符串&响应)(康涅狄格州SmtpConnection,字节[]命令,从字符串). Mail.SmtpTransport.SendMail(MailAddress sender,MailAddressCollection recipients,String deliveryNotify,SmtpFailedRecipientException&exception)