1

大量のメール送信にSmtpClient(.NET 3.5、VS 2008)を使用しています。以下のコードは、送信ごとに約2秒で始まり、foreachループが約30個のアドレスを処理して劣化し始めた後、送信ごとに20秒以上に劣化します。何か案は?

ジム

// Setup Client
SmtpClient client = new SmtpClient(smtpHost, 587);
client.Credentials = new NetworkCredential(smptLogin, smtpPassword);

// Send mail
foreach (string address in addresses)
{
    MailMessage message = BuildMessage(body);
    message.To.Clear();
    message.To.Add(new MailAddress(address));

    client.Send(message);
}
4

1 に答える 1

4

接続しているホストを実行しているプロバイダーが、スパム対策としてスロットルを実装している可能性があります。

メールの内容は受信者ごとに変わらないようです。エンタープライズ環境では、数十通ではなく1通のメールを送信し、受信者をBccリストに追加します。あなたはこれを試すかもしれません。

于 2010-04-11T19:05:58.350 に答える