我想用System.Net.Mail发送电子邮件。
我使用此代码。
string[] emails = Email.Split(',');
MailMessage message = new MailMessage();
message.From = new MailAddress("doc@mysite.net");
foreach (var em in emails)
message.To.Add(new MailAddress(em));
message.Subject = "ثبت مدارک جدید";
message.Body = DNameTextBox.Text + Environment.NewLine + DMobileTextBox.Text +
Environment.NewLine + DEmailTextBox.Text + Environment.NewLine
+ DsubjectTextBox.Text + Environment.NewLine + DDescTextBox.Text;
{
HttpFileCollection hfc = Request.Files;
for (int i = 0; i <= hfc.Count - 1; i++) // CHECK THE FILE COUNT.
{
HttpPostedFile hpf = hfc[i];
if (hpf.ContentLength > 0)
message.Attachments.Add(
new Attachment(hpf.InputStream, Path.GetFileName(hpf.FileName))
);
}
}
SmtpClient smtp = new SmtpClient("mail.site.com", 25);
//to authenticate we set the username and password properites on the SmtpClient
smtp.Credentials = new NetworkCredential("doc@mysite.net", "000");
smtp.Send(message);
它发送了电子邮件,但我的问题是它发送了20封电子邮件。
为什么smtp.Send(message)
会发送多封电子邮件?
答案 0 :(得分:0)
这是因为您已在地址中添加了多个地址。因此,它会向所有电子邮件地址发送电子邮件。
请参阅以下代码。
foreach (var em in emails)
message.To.Add(new MailAddress(em));