我正在使用SmtpClient库通过以下方式发送电子邮件:
SmtpClient client = new SmtpClient();
client.Host = "hostname";
client.Port = 465;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.EnableSsl = true;
client.Credentials = new NetworkCredential("User", "Pass);
client.Send("from@hostname", "to@hostname", "Subject", "Body");代码在我的测试环境中运行良好,但是当我使用生产SMTP服务器时,代码失败,并显示SmtpException“发送邮件失败”。并显示内部IOException "Unable to read data from the transport connection: net_io_connectionclosed“。
我已经确认防火墙不是问题。客户端和服务器之间的端口打开得很好。我不确定还有什么可以抛出这个错误。
发布于 2021-02-01 17:53:24
我最初的问题是关于间歇性的发送失败。例如,第一个Send()成功,第二个Send()失败,第三个Send()成功。最初,我认为我没有正确处理。所以我求助于using()。
无论如何,后来我添加了UseDefaultCredentials = false,Send()最终变得稳定起来。不过,我不知道为什么。
https://stackoverflow.com/questions/20228644
复制相似问题