Отправить письмо выбранным / найденным участникам в списке в C#
Я создал форму со списком под названием lstCompany, который отображает данные поиска, поисковыми текстовыми полями являются "Имя" и "PostCode" компании. У меня есть таблица с именем tblCompany, которая содержит CompanyNo(первичный ключ) с данными о компании в базе данных, включая электронную почту. Я хотел бы знать, как я могу отправить электронное письмо компаниям, которые я ищу в списке. Я сделал код, который отправляет электронную почту только одному человеку, которого я ввел в код. Ниже код для кнопки отправки
var fromAddress = new MailAddress("myemail", "name");
var toAddress = new MailAddress("other person's email", "name");
const string fromPassword = "password";
const string subject = "Testing";
const string body = "Testing";
var smtp = new SmtpClient
{
Host = "smtp.gmail.com",
Port = 587,
EnableSsl = true,
DeliveryMethod = SmtpDeliveryMethod.Network,
UseDefaultCredentials = false,
Credentials = new NetworkCredential(fromAddress.Address, fromPassword)
};
using (var message = new MailMessage(fromAddress, toAddress)
{
Subject = subject,
Body = body
})
{
smtp.Send(message);
MessageBox.Show("Your email has been sent!");
}
}
1 ответ
Попробуйте что-то вроде этого:
private MailMessage m = new MailMessage();
protected void ListTo_SelectedIndexChanged(object sender, EventArgs e)
{
m.To.Add(new MailAddress("adress@mail.com"));
}
Если ваш список управляет множественным выбором, вы можете предпочесть:
protected void Button_Click(object sender, EventArgs e)
{
MailMessage m = new MailMessage();
foreach (ListItem item in ListBox1.Items)
{
if (item.Selected)
m.To.Add(new MailAddress(item.Value));
}
}