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

时间:2018-09-03 17:26:07

标签: c# smtp

为什么会出现此错误?为什么所有相​​关问题都没有解决方案?

  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);

我需要永久解决此问题。邮件会发送几次,然后停止。

2 个答案:

答案 0 :(得分:0)

  1. 尝试通过单个smtp连接/会话(例如50个)发送许多邮件
  2. 准备好达到服务器强加的限制。

答案 1 :(得分:0)

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

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

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