如何解决“服务不可用,关闭传输通道。服务器响应是:服务器忙,连接太多“

问题描述 投票:0回答:2

为什么我收到此错误?为什么所有相​​关问题都没有解决方案?

  var emailAdd = mailSettings.EmailAddress;
                            var smtpClient = mailSettings.SMTPClient;
                            password = mailSettings.Password;

                            var Message = new MailMessage(emailAdd, to, subject, "mail body");
                            Message.Attachments.Add(new Attachment(new MemoryStream(bytes), "Report_Card.pdf"));
                            Message.IsBodyHtml = true;
                            Message.From = new MailAddress(emailAdd, displayName);
                            var smtp = new SmtpClient(smtpClient);
                            var NetworkCredentials = new NetworkCredential();
                            NetworkCredentials.UserName = emailAdd;
                            NetworkCredentials.Password = password;

                            smtp.Credentials = NetworkCredentials;
                            smtp.Send(Message);

我需要永久解决这个问题。邮件会发生几次然后停止。

c# smtp
2个回答
0
投票
  1. 尝试通过单个smtp连接/会话发送许多消息(例如50)
  2. 无论如何,准备达到服务器强加的限制。

0
投票

此错误通常是由服务器限制可通过SMTP连接传输的电子邮件数量引起的。通常这样做是为了防止垃圾邮件。

你有选择。 (a)您可以限制一次发送的消息数量,以便不超过限制。 (b)或者您可以要求服务器管理员调整服务器的限制。 (c)或者您可以尝试重新配置与服务器的连接,以便在发出5封邮件后自动断开或连接。

它更多的是服务器问题,而不是编程问题,尽管您可以尝试重新配置代码以克服此限制(请参阅选项C)。

© www.soinside.com 2019 - 2024. All rights reserved.