Добавление адреса электронной почты получателя в тело письма - PullRequest
2 голосов
/ 31 октября 2019

Я использую код C # с базовым System.Net.Mail. SmtpClient для отправки электронной почты получателям.

В теле письма мне нужно добавить адрес электронной почты для каждогополучатель, есть ли способ сделать это в одном письме нескольким получателям?

//basic settings    
MailMessage mail = new MailMessage();
SmtpClient client = new SmtpClient();
client.Port = 25;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.Host = "smtp.gmail.com";
mail.Subject = "this is a test email.";

//relevent part
msgClient.To.Add(user1@hotmail.com);
msgClient.To.Add(user2@hotmail.com);
msgClient.To.Add(user3@hotmail.com);
mail.Body = "I need to put here the customer's Email Address without sending multiple emails";

client.Send(mail);

1 Ответ

1 голос
/ 31 октября 2019

это невозможно из-за ограничений протокола SMTP. Если вы хотите это сделать, вам, вероятно, следует отправлять свои электронные письма по одному. тем не менее, лучше изменить формат ваших электронных писем, чтобы вам не нужно было включать такие данные в тело сообщения.


ps: System.Net.Mail.SmtpClien устарело, используйте mailkit Вместо этого API-интерфейсы одинаковы, поэтому вам не нужно менять код, вам просто нужно установить его через NuGet, а затем изменить ссылку с System.Net.Mail.SmtpClien на MailKit.Net.Smtp.SmtpClient

...