Invio a più indirizzi e-mail ma visualizzando solo uno c #
-
13-09-2020 - |
Domanda
Sto usando lo smtpclient in C # e invierò potenzialmente 100 secondi di indirizzi e-mail.Non voglio doverlo loop attraverso ognuno e inviarli un'e-mail individuale.
So che è possibile inviare solo il messaggio una volta ma non voglio che l'indirizzo e-mail di visualizzare gli altri 100 di altri indirizzi email come questo:
Bob Hope; Brain Cant; Roger Rabbit;Etc Etc
.
È possibile inviare il messaggio una volta e assicurarsi che sia visualizzato solo l'indirizzo email del destinatario in da parte dell'e-mail?
Soluzione
mai sentito parlare di BCC (copia di carbonio cieco)?:)
Se è possibile assicurarsi che il client SMTP possa aggiungere gli indirizzi come BCC, il problema sarà risolto :)
Sembra che ci sia un elemento di copia di carbonio cieco nella classe MailMessage
http://msdn.microsoft.com/en-noi / biblioteca / system.net.mail.mailmessage.aspx
http://msdn.microsoft.com / en-noi / biblioteca / system.net.mail.mailmessage.bcc.aspx
Ecco un esempio che ho ottenuto da MSDN
public static void CreateBccTestMessage(string server)
{
MailAddress from = new MailAddress("ben@contoso.com", "Ben Miller");
MailAddress to = new MailAddress("jane@contoso.com", "Jane Clayton");
MailMessage message = new MailMessage(from, to);
message.Subject = "Using the SmtpClient class.";
message.Body = @"Using this feature, you can send an e-mail message from an application very easily.";
MailAddress bcc = new MailAddress("manager1@contoso.com");
//This is what you need
message.Bcc.Add(bcc);
SmtpClient client = new SmtpClient(server);
client.Credentials = CredentialCache.DefaultNetworkCredentials;
Console.WriteLine("Sending an e-mail message to {0} and {1}.",
to.DisplayName, message.Bcc.ToString());
try {
client.Send(message);
}
catch (Exception ex) {
Console.WriteLine("Exception caught in CreateBccTestMessage(): {0}",
ex.ToString() );
}
}
. Altri suggerimenti
Se si utilizza la classe MailMessage, utilizzare la proprietà BCC (BInk Carbon Copy).
MailMessage message = new MailMessage();
MailAddress bcc = new MailAddress("manager1@contoso.com");
// Add your email address to BCC
message.Bcc.Add(bcc);
.