如何使用“smtpClient.Send(message);”从asp.net(c#)代码中有效地发送批量邮件?

时间:2011-04-21 05:33:57

标签: asp.net smtpclient bulk-mail

我已经设置了 Windows服务来执行批量邮寄功能,该功能批量执行

服务在其计划期间从数据库中提取一个批次,并且在每个批次之后我已经延迟了20秒

这样做是否可以防止将邮件视为垃圾邮件或批量邮件?如果是这样,我的代码会执行我需要的操作。我的代码如下:

//get the batch and execute in a child thread and need to continue only after the  thread get terminated.

 for (int i = 0; i <= QueueCount/20;i++)
 {
      Thread newThread = new Thread(ProcessMailQueue);

       newThread.Start();

       while(!newThread.IsAlive);

       Thread.Sleep(1);

       newThread.Join();              
 }   

 //delay after each batch execution

    private void ProcessMailQueue()
    {

       send the full mails in a batch

        Thread.Sleep(20000);
    }

任何人请提出你的建议......

1 个答案:

答案 0 :(得分:0)

AFAIK,大多数情况下,垃圾邮件检测发生在收件人端,即邮件客户端或服务/ SMTP管理收件人邮箱。它不太可能发生在原始SMTP上(因为这些天,SMTP需要身份验证和/或它们不支持中继,所以不需要检测垃圾邮件)。

无论如何,垃圾邮件检测基于许多不同的参数发生,例如收件人数量(到/ cc / bcc),邮件内容,知道垃圾邮件发送者SMTP逃逸列表等等,因此您必须考虑这一点。通常,具有合法内容,主题已填写,具有有效表单和少数收件人(使用“收件人”)的电子邮件不太可能被视为垃圾邮件。