Pregunta

Estoy tratando de usar la clase System.Net.Mail.MailMessage en C # para crear un correo electrónico que se envía a una lista de direcciones de correo electrónico a través de BCC . No quiero incluir una dirección TO , pero parece que debo hacerlo porque obtengo una excepción si uso una cadena vacía para la dirección TO en el MailMessage constructor. El error dice:

ArgumentException
The parameter 'addresses' cannot be an empty string.
Parameter name: addresses

Seguramente es posible enviar un correo electrónico usando solo BCC ya que esto no es una limitación de SMTP.

¿Hay alguna forma de evitar esto?

¿Fue útil?

Solución

Creo que si comentas toda la línea emailMessage.To.Add (sendTo); , enviará el correo electrónico con el campo To vacío.

Otros consejos

Haz lo mismo que haces para las explosiones de correo interno donde no quieres que la gente responda todo el tiempo.

Envíelo a usted mismo (o una cuenta ficticia), luego agregue su lista de BCC.

Debe incluir una dirección TO. Simplemente envíelo a un `` correo basura '' dirección de correo electrónico que no le importa recibir correo.

Ni siquiera necesita ser una dirección de correo electrónico real, normalmente uso Mailer@CompanyName.com para TO y NoReply @ CompanyName para FROM .

Simplemente no llame al método Add en la propiedad To.

Debe tener una dirección de domicilio. Ha sido así desde el envío original y las implementaciones en los años 80 y todos los correos SMTP, que yo sepa, tienen el mismo requisito. Puede usar una dirección ficticia para.

Puede usar una dirección falsa temporal y luego eliminarla justo después de:

MailMessage msg = new MailMessage(from, "fake@example.com");
msg.To.Clear();
foreach (string email in bcc.Split(';').Select(x => x.Trim()).Where(x => x != ""))
{
     msg.Bcc.Add(email);
}

Creo que intentabas hacer algo como:

var msg = new MailMessage("no-reply@notreal.com", "");

Es por eso que estaba viendo el mensaje de error.

En su lugar, intente algo como esto:

MailMessage msg = new MailMessage();
SmtpClient SmtpServer = new SmtpClient("smtp.notreal.com");
msg.From = new MailAddress("no-reply@notreal.com");
//msg.To.Add("target@notreal.com"); <--not needed
msg.Bcc.Add("BCCtarget@notreal.com");
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top