Compartir vía


SmtpClient.Send Método

Definición

Envía un mensaje de correo electrónico a un servidor SMTP para su entrega. Estos métodos bloquean mientras se transmite el mensaje.

Sobrecargas

Nombre Description
Send(MailMessage)

Envía el mensaje especificado a un servidor SMTP para su entrega.

Send(String, String, String, String)

Envía el mensaje de correo electrónico especificado a un servidor SMTP para su entrega. El remitente del mensaje, los destinatarios, el asunto y el cuerpo del mensaje se especifican mediante String objetos .

Send(MailMessage)

Source:
SmtpClient.cs
Source:
SmtpClient.cs
Source:
SmtpClient.cs
Source:
SmtpClient.cs
Source:
SmtpClient.cs

Envía el mensaje especificado a un servidor SMTP para su entrega.

public:
 void Send(System::Net::Mail::MailMessage ^ message);
public void Send(System.Net.Mail.MailMessage message);
member this.Send : System.Net.Mail.MailMessage -> unit
Public Sub Send (message As MailMessage)

Parámetros

message
MailMessage

que MailMessage contiene el mensaje que se va a enviar.

Excepciones

message es null.

Esto SmtpClient tiene otra operación de envío que ya está en curso.

O bien

From es null.

O bien

No hay destinatarios especificados en Tolas propiedades , CCy Bcc .

O bien

DeliveryMethod la propiedad se establece Network en y Host es null.

O bien

DeliveryMethod la propiedad se establece Network en y Host es igual a la cadena vacía ("").

O bien

DeliveryMethod la propiedad se establece Network en y Port es cero, un número negativo o mayor que 65.535.

Este objeto se ha eliminado.

Error en la conexión con el servidor SMTP.

O bien

Error de autenticación.

O bien

Se agota el tiempo de espera de la operación.

O bien

EnableSsl se establece en true , pero la DeliveryMethod propiedad está establecida SpecifiedPickupDirectory en o PickupDirectoryFromIis.

O bien

EnableSsl se establece true, en , pero el servidor de correo SMTP no anunció STARTTLS en la respuesta al comando EHLO.

message No se pudo entregar a uno de los destinatarios de To, CCo Bcc.

message No se pudo entregar a dos o más de los destinatarios de To, CCo Bcc.

Ejemplos

En el ejemplo de código siguiente se muestra el uso de este método.

public static void CreateTestMessage2(string server)
{
    string to = "jane@contoso.com";
    string from = "ben@contoso.com";
    MailMessage message = new MailMessage(from, to);
    message.Subject = "Using the new SMTP client.";
    message.Body = @"Using this new feature, you can send an email message from an application very easily.";
    SmtpClient client = new SmtpClient(server);
    // Credentials are necessary if the server requires the client
    // to authenticate before it will send email on the client's behalf.
    client.UseDefaultCredentials = true;

    try
    {
        client.Send(message);
    }
    catch (Exception ex)
    {
        Console.WriteLine("Exception caught in CreateTestMessage2(): {0}",
            ex.ToString());
    }
}

Comentarios

Este método bloquea mientras se transmite el correo electrónico. Puede especificar un valor de tiempo de espera mediante la Timeout propiedad para asegurarse de que el método devuelve una vez transcurrido un período de tiempo especificado.

Antes de llamar a este método, las Host propiedades y Port deben establecerse a través de los archivos de configuración estableciendo las propiedades pertinentes o pasando esta información al SmtpClient(String, Int32) constructor.

No puede llamar a este método si hay un mensaje que se envía de forma asincrónica.

Si el host SMTP requiere credenciales, debe establecerlas antes de llamar a este método. Para especificar las credenciales, use las UseDefaultCredentials propiedades o Credentials .

Si recibe una SmtpException excepción, compruebe la StatusCode propiedad para encontrar el motivo por el que se produjo un error en la operación. SmtpException También puede contener una excepción interna que indica el motivo por el que se produjo un error en la operación.

Al enviar correo electrónico mediante Send a varios destinatarios y el servidor SMTP acepta algunos destinatarios como válidos y rechaza otros, envía correo electrónico a los destinatarios aceptados y, a continuación, Send se produce una SmtpFailedRecipientExceptionSmtpFailedRecipientsException excepción (o si solo se rechaza un destinatario). Contiene SmtpFailedRecipientsException una lista de los destinatarios rechazados.

Nota:

Si la EnableSsl propiedad se establece trueen y el servidor de correo SMTP no anuncia STARTTLS en la respuesta al comando EHLO, se producirá SmtpExceptionuna llamada a los Send métodos o SendAsync .

Se aplica a

Send(String, String, String, String)

Source:
SmtpClient.cs
Source:
SmtpClient.cs
Source:
SmtpClient.cs
Source:
SmtpClient.cs
Source:
SmtpClient.cs

Envía el mensaje de correo electrónico especificado a un servidor SMTP para su entrega. El remitente del mensaje, los destinatarios, el asunto y el cuerpo del mensaje se especifican mediante String objetos .

public:
 void Send(System::String ^ from, System::String ^ recipients, System::String ^ subject, System::String ^ body);
public void Send(string from, string recipients, string? subject, string? body);
public void Send(string from, string recipients, string subject, string body);
member this.Send : string * string * string * string -> unit
Public Sub Send (from As String, recipients As String, subject As String, body As String)

Parámetros

from
String

que String contiene la información de dirección del remitente del mensaje.

recipients
String

que String contiene las direcciones a las que se envía el mensaje.

subject
String

que String contiene la línea de asunto del mensaje.

body
String

que String contiene el cuerpo del mensaje.

Excepciones

from es null.

O bien

recipients es null.

from es Empty.

O bien

recipients es Empty.

Esto SmtpClient tiene otra operación de envío que ya está en curso.

O bien

DeliveryMethod la propiedad se establece Network en y Host es null.

O bien

DeliveryMethod la propiedad se establece Network en y Host es igual a la cadena vacía ("").

O bien

DeliveryMethod la propiedad se establece Network en y Port es cero, un número negativo o mayor que 65.535.

Este objeto se ha eliminado.

Error en la conexión con el servidor SMTP.

O bien

Error de autenticación.

O bien

Se agota el tiempo de espera de la operación.

O bien

EnableSsl se establece en true , pero la DeliveryMethod propiedad está establecida SpecifiedPickupDirectory en o PickupDirectoryFromIis.

O bien

EnableSsl se establece true, en , pero el servidor de correo SMTP no anunció STARTTLS en la respuesta al comando EHLO.

No se pudo entregar el mensaje a uno de los destinatarios de To, CCo Bcc.

No se pudo entregar el mensaje a dos o más de los destinatarios de To, CCo Bcc.

Comentarios

Este método bloquea mientras se transmite el correo electrónico. Puede especificar un valor de tiempo de espera mediante la Timeout propiedad para asegurarse de que el método devuelve una vez transcurrido un período de tiempo especificado.

Antes de llamar a este método, las Host propiedades y Port deben establecerse a través de los archivos de configuración estableciendo las propiedades pertinentes o pasando esta información al SmtpClient(String, Int32) constructor.

No puede llamar a este método si hay un mensaje que se envía de forma asincrónica.

Si el host SMTP requiere credenciales, debe establecerlas antes de llamar a este método. Para especificar las credenciales, use las UseDefaultCredentials propiedades o Credentials .

Si recibe una SmtpException excepción, compruebe la StatusCode propiedad para encontrar el motivo por el que se produjo un error en la operación. SmtpException También puede contener una excepción interna que indica el motivo por el que se produjo un error en la operación.

Al enviar correo electrónico mediante Send a varios destinatarios y el servidor SMTP acepta algunos destinatarios como válidos y rechaza otros, envía correo electrónico a los destinatarios aceptados y, a continuación, Send se produce una SmtpFailedRecipientExceptionSmtpFailedRecipientsException excepción (o si solo se rechaza un destinatario). Contiene SmtpFailedRecipientsException una lista de los destinatarios rechazados.

Nota:

Si la EnableSsl propiedad se establece trueen y el servidor de correo SMTP no anuncia STARTTLS en la respuesta al comando EHLO, se producirá SmtpExceptionuna llamada a los Send métodos o SendAsync .

Se aplica a