不向多个地址发送电子邮件
本文关键字:电子邮件 地址 | 更新日期: 2023-09-27 18:23:49
我在web应用程序中发送多封电子邮件时遇到问题。如果我只发送到一个地址,它会正常发送!
我的字符串列表是正确的,因为如果我在Outlook中粘贴并手动发送,所有地址都会收到。
这是我的字符串列表电子邮件有一个值"caio.jesus@ex.com",我收到了。如果字符串listEmail有值"caio.jesus@ex.com;raul@ex.com;mat@ex.com;"没有人收到。
lstEmail.ToList();
string listEmail = string.Join("; ", lstEmail.ToArray());
System.Net.Mail.MailMessage objEmail = new System.Net.Mail.MailMessage();
objEmail.From = new MailAddress("caio.jesus@ex.com", "BR");
objEmail.To.Add(listEmail);
objEmail.Priority = System.Net.Mail.MailPriority.High;
objEmail.IsBodyHtml = true;
objEmail.Subject = "System NDRSecurity - Novas Requisições.";
objEmail.Body = "EX";
objEmail.SubjectEncoding = Encoding.GetEncoding("ISO-8859-1");
objEmail.BodyEncoding = Encoding.GetEncoding("ISO-8859-1");
SmtpClient objSmtp = new SmtpClient("XXX");
objSmtp.EnableSsl = true;
objSmtp.Port = 25;
objSmtp.Credentials = new NetworkCredential("caio.jesus@ex.com", "XXX");
objSmtp.Send(objEmail);
有关解决方案,请参阅MSDN MailAddressCollection
参数
地址
类型:System.String
要添加到MailAddressCollection的电子邮件地址。多个电子邮件地址必须用逗号(",")分隔。
所以把你的代码改成
lstEmail.ToList();
string listEmail = string.Join(", ", lstEmail.ToArray());
它应该起作用!
您的listemail
字符串需要用逗号,
分隔,而不是用分号;
分隔。
以下是MSDN中解释MailAddress
类的文章:http://msdn.microsoft.com/en-us/library/system.net.mail.mailaddress.aspx