发送批量邮件通知

时间:2015-12-09 13:31:35

标签: c# smtp smtpclient

我想使用SMTP一次发送500到2500封邮件,目前它对我有用,但是所有邮件都需要发送太多,所以请建议我发送大量邮件的最佳方法时间,我使用下面的代码。

string readMail = null;
System.Net.Mail.SmtpClient smtpClient = null;
smtpClient = new System.Net.Mail.SmtpClient("smtp.gmail.com");
smtpClient.UseDefaultCredentials = false;
smtpClient.Host = "smtp.gmail.com";
smtpClient.Port = 587;
smtpClient.Credentials = new NetworkCredential("myemail@example.net", "password");
smtpClient.EnableSsl = true;
smtpClient.SendCompleted += new SendCompletedEventHandler(cleint_Responce);
object userState = m;
try
{
     smtpClient.SendAsync(m,userState); 
}

1 个答案:

答案 0 :(得分:1)

Gmail不适用于发送批量电子邮件。如果您打算使用Gmail向大量朋友发送电子邮件,请阅读以下规则以避免暂时锁定您的Gmail:

规则1:您可以通过Gmail网站每天向最多500位收件人发送电子邮件。尝试超出限制,您的Gmail帐户可能会暂时停用,并显示错误消息 - “第4节中的Gmail锁定”。

请务必注意,此限制是围绕收件人而非邮件。因此,您可以向每个50人发送10封电子邮件,也可以将1封电子邮件发送给最多500人。

规则2:如果您通过POP或IMAP客户端(如Microsoft Outlook或Apple Mail)访问Gmail,则可以一次向最多100个人发送电子邮件。如果超出限制,您的帐户可能会被禁用一天,并显示错误 - “550 5.4.5超出每日发送配额。”

规则3:在点击Gmail中的“发送”按钮之前,请务必仔细检查收件人的电子邮件地址。这是因为如果电子邮件包含大量不存在或已损坏的地址(< 25?),并且在发送失败时反弹,则您的帐户可能会被停用。

规则4:您可以将多个电子邮件地址与您的Gmail帐户相关联,并代表任何其他地址发送电子邮件。但是,从其他地址发送邮件时,会应用原始帐户的邮件限制。

规则5:如果您通过Google Script发送电子邮件,例如Gmail邮件合并,则每日发送限制为每天100个免费Gmail帐户的收件人。您可以使用MailApp.GetRemainingDailyQuota方法来了解您的现有配额,否则脚本将抛出一个异常 - “服务调用次数过多。”

如果您希望通过Google脚本发送更多电子邮件,则必须升级到Google Apps。即使这样,您的发送限制也只会在几个结算周期后增加,或者您选择了5个或更多用户。

有一些付费服务可以帮助您更好地完成这项工作,例如Sendblaster