【发布时间】:2017-12-16 21:19:31
【问题描述】:
可能重复:
Unable to send an email to multiple addresses/recipients using C#
我使用下面的代码在脚本任务中发送邮件
string MailFromName = "Admin";
System.Net.Mail.SmtpClient mailobj = new System.Net.Mail.SmtpClient();
System.Net.Mail.MailAddress MailFrom = new System.Net.Mail.MailAddress(MailFromEmail, MailFromName);
System.Net.Mail.MailAddress MailTo = new System.Net.Mail.MailAddress(MailToEmail, MailToEmail);
System.Net.Mail.MailMessage mailmsg = new System.Net.Mail.MailMessage(MailFrom, MailTo);
mailmsg.IsBodyHtml = true;
mailmsg.Subject = strMessageSubject;
mailmsg.Body = strMessageBody;
mailobj.Host = strSMTPServerName;
mailobj.Send(mailmsg);
当我将 MailToEmail 用作“myaddress@myMail.com”(即一个电子邮件地址)时,它工作正常
但是当我有多个地址要列出时,这不会发送任何邮件(也不会失败)
例如:“MyAdress@MyMail.com;MySecondAddress@MyMail.com”
如何解决?
编辑新代码
string MailFromName = "Admin";
System.Net.Mail.SmtpClient mailobj = new System.Net.Mail.SmtpClient();
System.Net.Mail.MailAddress MailFrom = new System.Net.Mail.MailAddress(MailFromEmail, MailFromName);
System.Net.Mail.MailAddress MailTo = new System.Net.Mail.MailAddress(MailToEmail, MailToEmail);
System.Net.Mail.MailMessage mailmsg = new System.Net.Mail.MailMessage(MailFrom, MailTo);
mailmsg.IsBodyHtml = true;
mailmsg.Subject = strMessageSubject;
mailmsg.Body = strMessageBody;
foreach (string str in multipleToMsg)
{
mailmsg.To.Add(str);
}
mailobj.Host = strSMTPServerName;
mailobj.Send(mailmsg);
【问题讨论】:
-
如何添加多个地址?这似乎是关键代码,但它不见了。
-
您的邮件 MailToEmail 变量是逗号分隔的字符串吗?
-
MailToEmail 是一个字符串变量,有多个地址,用 ; 分隔
-
using System.Net.Mail会让你省去很多麻烦。