Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 只需单击一个按钮,即可向200多个收件人发送不同的电子邮件_C#_Asp.net - Fatal编程技术网

C# 只需单击一个按钮,即可向200多个收件人发送不同的电子邮件

C# 只需单击一个按钮,即可向200多个收件人发送不同的电子邮件,c#,asp.net,C#,Asp.net,我有一个asp.net应用程序,我需要向200多个收件人发送日期通知(只需单击一个按钮),每个人都有不同的日期,我制作了一种通过邮件发送的方法,但我想如果我在for loop中使用它,超过200次可能是邮件被GMAIL阻止了 在那里发送邮件的方法: public static bool SendRtLMail(string TO,string FROM,string DisplayName,string SUBJECT,string BODY,string HOST,string USERNAM

我有一个asp.net应用程序,我需要向200多个收件人发送日期通知(只需单击一个按钮),每个人都有不同的日期,我制作了一种通过邮件发送的方法,但我想如果我在for loop中使用它,超过200次可能是邮件被GMAIL阻止了

在那里发送邮件的方法:

public static bool SendRtLMail(string TO,string FROM,string DisplayName,string SUBJECT,string BODY,string HOST,string USERNAME,string PASSWORD)
        {
            MailMessage mail = new MailMessage();
            if (TO != "")
                mail.To.Add(TO);
            //mail.To.Add("Another Email ID where you wanna send same email");
mail.From = new MailAddress(FROM,DisplayName,System.Text.Encoding.Default);
            mail.Subject = SUBJECT;
            mail.SubjectEncoding = System.Text.Encoding.Default;
            //mail.SubjectEncoding = System.Text.Encoding.UTF8;
            mail.IsBodyHtml = true;
            string Body = BODY ;
            mail.Body = Body;

            mail.IsBodyHtml = true;
            SmtpClient smtp = new SmtpClient();
            smtp.Host = HOST; //"smtp.gmail.com"; //Or Your SMTP Server Address
            smtp.Port = 587;
            smtp.Credentials = new System.Net.NetworkCredential(USERNAME,PASSWORD);
            //Or your Smtp Email ID and Password
            smtp.EnableSsl = true;
            smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
            try
            {
                smtp.Send(mail);
                return true;
            }
            catch(Exception ex)
            {
                return false;
            }
        }

有人知道如何实施这个问题吗?

是的。不要使用谷歌。就这么简单

Gmail不喜欢批量电子邮件,而且你已经在一个不欢迎你的需求的提供商上构建了你的基础设施堆栈。事实上,这表明你忽视了这一点,这也让你陷入了一个不改变堆栈就无法解决问题的境地

要么托管你自己的电子邮件服务器,要么寻找批量邮寄服务(我在这里不提这一点,你使用谷歌-这里不欢迎产品推荐)


谷歌不喜欢你在短时间内发送大量邮件,所以请接受这一点。

或者建立你自己的社交服务来推迟发送间隔时间,希望谷歌没有每日下限,或者意识到你经常这样做。或者有一天你需要发送更多的电子邮件。我在网上找到了一些每日最多100条消息的信息…@推断:如果不在服务器的windows操作系统上使用任务调度器,我如何在asp.net中做到这一点,因为它会造成很多问题并停止工作,但您不能,当asp.net进程停止(重新连接)时,您的计划活动将停止