2010-07-10 10 views
5

Estoy usando SmtpClient en C# y enviaré a potencialmente cientos de direcciones de correo electrónico. No quiero tener que recorrer cada una de ellas y enviarles un correo electrónico individual.Enviando a varias direcciones de correo electrónico pero mostrando solo una C#

Sé que es posible enviar el mensaje solamente una vez, pero no desea que el correo electrónico de direcciones para mostrar los 100s de otras direcciones de correo electrónico de esta manera:

Bob Hope; Brain Cant; Roger Rabbit;Etc Etc 

¿Es posible enviar el mensaje una vez y asegúrese de que solo se muestre la dirección de correo electrónico del destinatario en el desde el parte del correo electrónico?

Respuesta

11

¿Has oído hablar de BCC (Blind Carbon Copy)? :)

Si puede asegurarse de que su cliente SMTP puede agregar las direcciones como BCC, entonces su problema será resuelto :)

Parece que hay un elemento de Ciegos Carbon Copy en la clase MailMessage

http://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.aspx

http://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.bcc.aspx

Este es un ejemplo que recibí de MSDN

public static void CreateBccTestMessage(string server) 
     { 
      MailAddress from = new MailAddress("[email protected]", "Ben Miller"); 
      MailAddress to = new MailAddress("[email protected]", "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("[email protected]"); 

       //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()); 
      } 
     } 
3

Si está utilizando la clase MailMessage, utilice la propiedad BCC (Blind Carbon Copy).

MailMessage message = new MailMessage(); 
MailAddress bcc = new MailAddress("[email protected]"); 

// Add your email address to BCC 
message.Bcc.Add(bcc); 
Cuestiones relacionadas