2010-04-11 2 views
1

J'utilise SmtpClient (.NET 3.5, VS 2008) pour les mailings de masse. Le code ci-dessous commence avec environ 2 secondes par envoi et se détériore à plus de 20 secondes par envoi après que la boucle foreach a traité environ 30 adresses et continue à se détériorer. Des idées?SmtpClient devient progressivement plus lent

Jim

// 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); 
} 
+0

À quel serveur SMTP envoyez-vous? – SLaks

Répondre

4

Le fournisseur exécute l'hôte que vous vous connectez à la mise en œuvre pourrait être étranglant comme une mesure anti-spam.

Il semble que le contenu de votre courrier ne change pas par destinataire. Dans un environnement d'entreprise, j'envoie un seul courrier, pas des dizaines, et j'ajoute des destinataires à la liste Bcc. Vous pourriez essayer ceci.

Questions connexes