如何根据选择查询 asp.net/C 发送组电子邮件
本文关键字:电子邮件 net 何根 选择 查询 asp | 更新日期: 2023-09-27 18:32:18
我正在尝试根据从名为emailresults
的选择查询收集的电子邮件发送群组电子邮件。
这是我到目前为止得到的代码,但我收到错误:
无法发送电子邮件 - 错误:指定的字符串不是电子邮件地址所需的格式
MailMessage message = new MailMessage("queensqsis@gmail.com", "queensqsis@gmail.com");// to & from
message.To.Add(emailresult);
message.Subject = "Test";
message.Body = "test ";
SmtpClient Client = new SmtpClient();
Client.Send(message);
如果emailResults
是某种可枚举的,则需要将枚举中的每个电子邮件地址字符串添加到 MailMessage.To MailAddressCollection。在不知道emailresults
类型的情况下,很难确切地说出如何做到这一点。我希望你需要一些类似的东西。
MailMessage message = new MailMessage("queensqsis@gmail.com", "queensqsis@gmail.com");// to & from
for(var item in emailresult){
message.To.Add(item);
}
message.Subject = "Test";
message.Body = "test ";
SmtpClient Client = new SmtpClient();
Client.Send(message);
如果您可以确认emailResults
类型是什么,那么提供明确的解决方案会容易得多。
在上面的评论中,您指出电子邮件结果是一个选择查询结果,所以某种可枚举的?或者正如另一张海报建议用逗号或分号分隔的长字符串?
尝试执行以下建议之一...
MailMessage message = new MailMessage("queensqsis@gmail.com", "queensqsis@gmail.com");// to & from
//For each item in the list, add it to the list of "To" recipients
emailresult.ForEach(r => message.To.Add(r)) ;
//OR IF THE ADDRESS IS A PROPERTY OF THE ITEM
emailresult.ForEach(r => message.To.Add(r.MyEmailAddressProperty)) ;
//OR IF emailresult is some sort of string list, "email1,email2,email3" or similar then
foreach (string oneEmail in emailresult.Split(","))
{
message.To.Add(oneEmail);
}
message.Subject = "Test";
message.Body = "test ";
SmtpClient Client = new SmtpClient();
Client.Send(message);