我想使用自己的数据库向超过2个人发送电子邮件。 所以我用for循环发送电子邮件。但它只是发送给第一个人。 我还检查email_data是否有超过2个,并且我很好地带来了电子邮件数据。 这是我的代码。
CMD echo "127.0.0.1 noreply.example.com $(hostname)" >> /etc/hosts \
&& sendmailconfig \
&& cron -f
答案 0 :(得分:0)
通过添加调试打印来检查行计数
并尝试将睡眠放在最后
smtp.UseDefaultCredentials = true;
smtp.Credentials = credentials;
smtp.Port = 587;
smtp.Send(mm);
<强> System.Threading.Sleep(1000); 强>
答案 1 :(得分:0)
我尝试在我的计算机上运行您的代码(我刚用我的私人Gmail帐户凭据替换了凭据)并且它没有任何问题 - 电子邮件已成功发送到3个不同的电子邮件地址。所以问题可能与您的计算机有关。所以这里有一些你可以尝试的想法:
SmtpClient.Send()
方法的源代码以查看位置
完全执行停止,这应该给你一个提示有什么问题
以及如何解决它。 BTW可能存在错误:for (int i = 0; i <= email_data.Rows.Count; i++)
应为for (int i = 0; i < email_data.Rows.Count; i++)