SmtpClient Classe

Definição

Cuidado

SmtpClient and its network of types are poorly designed, we strongly recommend you use https://github.com/jstedfast/MailKit and https://github.com/jstedfast/MimeKit instead

Permite que aplicativos enviem email usando o Protocolo SMTP.Allows applications to send email by using the Simple Mail Transfer Protocol (SMTP). O tipo SmtpClient agora está obsoleto.The SmtpClient type is now obsolete.

public ref class SmtpClient : IDisposable
public ref class SmtpClient
public class SmtpClient : IDisposable
public class SmtpClient
[System.Obsolete("SmtpClient and its network of types are poorly designed, we strongly recommend you use https://github.com/jstedfast/MailKit and https://github.com/jstedfast/MimeKit instead")]
public class SmtpClient : IDisposable
type SmtpClient = class
    interface IDisposable
type SmtpClient = class
[<System.Obsolete("SmtpClient and its network of types are poorly designed, we strongly recommend you use https://github.com/jstedfast/MailKit and https://github.com/jstedfast/MimeKit instead")>]
type SmtpClient = class
    interface IDisposable
Public Class SmtpClient
Implements IDisposable
Public Class SmtpClient
Herança
SmtpClient
Atributos
Implementações

Exemplos

O exemplo de código a seguir demonstra o envio de uma mensagem de email de forma assíncrona.The following code example demonstrates sending an email message asynchronously.

#using <System.dll>
using namespace System;
using namespace System::Net;
using namespace System::Net::Mail;
using namespace System::Net::Mime;
using namespace System::Threading;
using namespace System::ComponentModel;

static bool mailSent;

static void SendCompletedCallback(Object^ sender, AsyncCompletedEventArgs^ e)
{
    // Get the unique identifier for this asynchronous 
    // operation.
    String^ token = (String^) e->UserState;

    if (e->Cancelled)
    {
        Console::WriteLine("[{0}] Send canceled.", token);
    }
    if (e->Error != nullptr)
    {
        Console::WriteLine("[{0}] {1}", token, 
            e->Error->ToString());
    } else
    {
        Console::WriteLine("Message sent.");
    }
    mailSent = true;
}

int main(array<String^>^ args)
{
    if (args->Length > 1)
    {
        // Command-line argument must be the SMTP host.
        SmtpClient^ client = gcnew SmtpClient(args[1]);
        // Specify the email sender.
        // Create a mailing address that includes a UTF8 
        // character in the display name.
        MailAddress^ from = gcnew MailAddress("jane@contoso.com",
            "Jane " + (wchar_t)0xD8 + " Clayton",
            System::Text::Encoding::UTF8);
        // Set destinations for the email message.
        MailAddress^ to = gcnew MailAddress("ben@contoso.com");
        // Specify the message content.
        MailMessage^ message = gcnew MailMessage(from, to);
        message->Body = "This is a test email message sent" +
            " by an application. ";
        // Include some non-ASCII characters in body and 
        // subject.
        String^ someArrows = gcnew String(gcnew array<wchar_t>{L'\u2190', 
            L'\u2191', L'\u2192', L'\u2193'});
        message->Body += Environment::NewLine + someArrows;
        message->BodyEncoding = System::Text::Encoding::UTF8;
        message->Subject = "test message 1" + someArrows;
        message->SubjectEncoding = System::Text::Encoding::UTF8;
        // Set the method that is called back when the send
        // operation ends.
        client->SendCompleted += gcnew
            SendCompletedEventHandler(SendCompletedCallback);
        // The userState can be any object that allows your 
        // callback method to identify this send operation.
        // For this example, the userToken is a string constant.
        String^ userState = "test message1";
        client->SendAsync(message, userState);
        Console::WriteLine("Sending message... press c to" +
            " cancel mail. Press any other key to exit.");
        String^ answer = Console::ReadLine();
        // If the user canceled the send, and mail hasn't been 
        // sent yet,then cancel the pending operation.
        if (answer->ToLower()->StartsWith("c") && mailSent == false)
        {
            client->SendAsyncCancel();
        }
        // Clean up.
        delete message;
        client = nullptr;
        Console::WriteLine("Goodbye.");
    }
    else
    {
        Console::WriteLine("Please give SMTP server name!");
    }
}

using System;
using System.Net;
using System.Net.Mail;
using System.Net.Mime;
using System.Threading;
using System.ComponentModel;
namespace Examples.SmtpExamples.Async
{
    public class SimpleAsynchronousExample
    {
        static bool mailSent = false;
        private static void SendCompletedCallback(object sender, AsyncCompletedEventArgs e)
        {
            // Get the unique identifier for this asynchronous operation.
             String token = (string) e.UserState;

            if (e.Cancelled)
            {
                 Console.WriteLine("[{0}] Send canceled.", token);
            }
            if (e.Error != null)
            {
                 Console.WriteLine("[{0}] {1}", token, e.Error.ToString());
            } else
            {
                Console.WriteLine("Message sent.");
            }
            mailSent = true;
        }
        public static void Main(string[] args)
        {
            // Command-line argument must be the SMTP host.
            SmtpClient client = new SmtpClient(args[0]);
            // Specify the email sender.
            // Create a mailing address that includes a UTF8 character
            // in the display name.
            MailAddress from = new MailAddress("jane@contoso.com",
               "Jane " + (char)0xD8+ " Clayton",
            System.Text.Encoding.UTF8);
            // Set destinations for the email message.
            MailAddress to = new MailAddress("ben@contoso.com");
            // Specify the message content.
            MailMessage message = new MailMessage(from, to);
            message.Body = "This is a test email message sent by an application. ";
            // Include some non-ASCII characters in body and subject.
            string someArrows = new string(new char[] {'\u2190', '\u2191', '\u2192', '\u2193'});
            message.Body += Environment.NewLine + someArrows;
            message.BodyEncoding =  System.Text.Encoding.UTF8;
            message.Subject = "test message 1" + someArrows;
            message.SubjectEncoding = System.Text.Encoding.UTF8;
            // Set the method that is called back when the send operation ends.
            client.SendCompleted += new
            SendCompletedEventHandler(SendCompletedCallback);
            // The userState can be any object that allows your callback
            // method to identify this send operation.
            // For this example, the userToken is a string constant.
            string userState = "test message1";
            client.SendAsync(message, userState);
            Console.WriteLine("Sending message... press c to cancel mail. Press any other key to exit.");
            string answer = Console.ReadLine();
            // If the user canceled the send, and mail hasn't been sent yet,
            // then cancel the pending operation.
            if (answer.StartsWith("c") && mailSent == false)
            {
                client.SendAsyncCancel();
            }
            // Clean up.
            message.Dispose();
            Console.WriteLine("Goodbye.");
        }
    }
}

Imports System.Net
Imports System.Net.Mail
Imports System.Net.Mime
Imports System.Threading
Imports System.ComponentModel

Namespace Examples.SmtpExamples.Async
    Public Class SimpleAsynchronousExample
        Private Shared mailSent As Boolean = False
        Private Shared Sub SendCompletedCallback(ByVal sender As Object, ByVal e As AsyncCompletedEventArgs)
            ' Get the unique identifier for this asynchronous operation.
            Dim token As String = CStr(e.UserState)

            If e.Cancelled Then
                Console.WriteLine("[{0}] Send canceled.", token)
            End If
            If e.Error IsNot Nothing Then
                Console.WriteLine("[{0}] {1}", token, e.Error.ToString())
            Else
                Console.WriteLine("Message sent.")
            End If
            mailSent = True
        End Sub
        Public Shared Sub Main(ByVal args() As String)
            ' Command line argument must the SMTP host.
            Dim client As New SmtpClient(args(0))
            ' Specify the email sender.
            ' Create a mailing address that includes a UTF8 character
            ' in the display name.
            Dim mailFrom As New MailAddress("jane@contoso.com", "Jane " & ChrW(&HD8) & " Clayton", System.Text.Encoding.UTF8)
            ' Set destinations for the email message.
            Dim mailTo As New MailAddress("ben@contoso.com")
            ' Specify the message content.
            Dim message As New MailMessage(mailFrom, mailTo)
            message.Body = "This is a test email message sent by an application. "
            ' Include some non-ASCII characters in body and subject.
            Dim someArrows As New String(New Char() {ChrW(&H2190), ChrW(&H2191), ChrW(&H2192), ChrW(&H2193)})
            message.Body += Environment.NewLine & someArrows
            message.BodyEncoding = System.Text.Encoding.UTF8
            message.Subject = "test message 1" & someArrows
            message.SubjectEncoding = System.Text.Encoding.UTF8
            ' Set the method that is called back when the send operation ends.
            AddHandler client.SendCompleted, AddressOf SendCompletedCallback
            ' The userState can be any object that allows your callback 
            ' method to identify this send operation.
            ' For this example, the userToken is a string constant.
            Dim userState As String = "test message1"
            client.SendAsync(message, userState)
            Console.WriteLine("Sending message... press c to cancel mail. Press any other key to exit.")
            Dim answer As String = Console.ReadLine()
            ' If the user canceled the send, and mail hasn't been sent yet,
            ' then cancel the pending operation.
            If answer.StartsWith("c") AndAlso mailSent = False Then
                client.SendAsyncCancel()
            End If
            ' Clean up.
            message.Dispose()
            Console.WriteLine("Goodbye.")
        End Sub
    End Class
End Namespace

Comentários

A SmtpClient classe é usada para enviar email a um servidor SMTP para entrega.The SmtpClient class is used to send email to an SMTP server for delivery. O protocolo SMTP é definido no RFC 2821, que está disponível em https://www.ietf.org .The SMTP protocol is defined in RFC 2821, which is available at https://www.ietf.org.

Importante

Não recomendamos que você use a SmtpClient classe para o novo desenvolvimento porque o SmtpClient não oferece suporte a muitos protocolos modernos.We don't recommend that you use the SmtpClient class for new development because SmtpClient doesn't support many modern protocols. Em vez disso, use MailKit ou outras bibliotecas.Use MailKit or other libraries instead. Para obter mais informações, consulte SmtpClient não deve ser usado no github.For more information, see SmtpClient shouldn't be used on GitHub.

A SmtpClient classe está obsoleta no Xamarin.The SmtpClient class is obsolete in Xamarin. No entanto:However:

  • Ele está incluído no .NET Standard 2,0 e em versões posteriores e, portanto, deve fazer parte de qualquer implementação do .NET que ofereça suporte a essas versões.It is included in the .NET Standard 2.0 and later versions and therefore must be part of any .NET implementation that supports those versions.
  • Ele está presente e pode ser usado no .NET Framework 4 por meio de .NET Framework 4,8.It is present and can be used in .NET Framework 4 through .NET Framework 4.8.
  • Ele é utilizável no .NET Core, mas seu uso não é recomendado.It is usable in .NET Core, but its use isn't recommended.

As classes mostradas na tabela a seguir são usadas para construir mensagens de email que podem ser enviadas usando o SmtpClient .The classes shown in the following table are used to construct email messages that can be sent using SmtpClient.

ClasseClass DescriçãoDescription
Attachment Representa anexos de arquivo.Represents file attachments. Essa classe permite anexar arquivos, fluxos ou texto a uma mensagem de email.This class allows you to attach files, streams, or text to an email message.
MailAddress Representa o endereço de email do remetente e dos destinatários.Represents the email address of the sender and recipients.
MailMessage Representa uma mensagem de email.Represents an email message.

Para construir e enviar uma mensagem de email usando SmtpClient o, você deve especificar as seguintes informações:To construct and send an email message by using SmtpClient, you must specify the following information:

  • O servidor de host SMTP que você usa para enviar email.The SMTP host server that you use to send email. Consulte as Host Port Propriedades e.See the Host and Port properties.

  • Credenciais para autenticação, se exigido pelo servidor SMTP.Credentials for authentication, if required by the SMTP server. Consulte a propriedade Credentials.See the Credentials property.

  • O endereço de email do remetente.The email address of the sender. Consulte os Send SendAsync métodos e que usam um from parâmetro.See the Send and SendAsync methods that take a from parameter. Consulte também a MailMessage.From propriedade.Also see the MailMessage.From property.

  • O endereço de email ou endereços dos destinatários.The email address or addresses of the recipients. Consulte os Send SendAsync métodos e que usam um recipient parâmetro.See the Send and SendAsync methods that take a recipient parameter. Consulte também a MailMessage.To propriedade.Also see the MailMessage.To property.

  • O conteúdo da mensagem.The message content. Consulte os Send SendAsync métodos e que usam um body parâmetro.See the Send and SendAsync methods that take a body parameter. Consulte também a MailMessage.Body propriedade.Also see the MailMessage.Body property.

Para incluir um anexo com uma mensagem de email, primeiro crie o anexo usando a Attachment classe e, em seguida, adicione-o à mensagem usando a MailMessage.Attachments propriedade.To include an attachment with an email message, first create the attachment by using the Attachment class, and then add it to the message by using the MailMessage.Attachments property. Dependendo do leitor de email usado pelos destinatários e pelo tipo de arquivo do anexo, alguns destinatários podem não conseguir ler o anexo.Depending on the email reader used by the recipients and the file type of the attachment, some recipients might not be able to read the attachment. Para clientes que não podem exibir o anexo em seu formato original, você pode especificar exibições alternativas usando a MailMessage.AlternateViews propriedade.For clients that cannot display the attachment in its original form, you can specify alternate views by using the MailMessage.AlternateViews property.

No .NET Framework, você pode usar os arquivos de configuração do aplicativo ou da máquina para especificar os valores de host, porta e credenciais padrão para todos os SmtpClient objetos.In .NET Framework, you can use the application or machine configuration files to specify default host, port, and credentials values for all SmtpClient objects. Para obter mais informações, consulte < > elemento MailSettings (configurações de rede).For more information, see <mailSettings> Element (Network Settings). O .NET Core não oferece suporte a padrões de configuração..NET Core does not support setting defaults. Como alternativa, você deve definir as propriedades relevantes SmtpClient diretamente.As a workaround, you must set the relevant properties on SmtpClient directly.

Para enviar a mensagem de email e bloquear enquanto aguarda o email ser transmitido ao servidor SMTP, use um dos métodos síncronos Send .To send the email message and block while waiting for the email to be transmitted to the SMTP server, use one of the synchronous Send methods. Para permitir que o thread principal do seu programa continue a ser executado enquanto o email é transmitido, use um dos métodos assíncronos SendAsync .To allow your program's main thread to continue executing while the email is transmitted, use one of the asynchronous SendAsync methods. O SendCompleted evento é gerado quando uma SendAsync operação é concluída.The SendCompleted event is raised when a SendAsync operation completes. Para receber esse evento, você deve adicionar um SendCompletedEventHandler delegado a SendCompleted .To receive this event, you must add a SendCompletedEventHandler delegate to SendCompleted. O SendCompletedEventHandler delegado deve fazer referência a um método de retorno de chamada que manipula a notificação de SendCompleted eventos.The SendCompletedEventHandler delegate must reference a callback method that handles notification of SendCompleted events. Para cancelar uma transmissão de email assíncrona, use o SendAsyncCancel método.To cancel an asynchronous email transmission, use the SendAsyncCancel method.

Observação

Se houver uma transmissão de email em andamento e você ligar SendAsync ou Send novamente, você receberá um InvalidOperationException .If there is an email transmission in progress and you call SendAsync or Send again, you will receive an InvalidOperationException.

A conexão estabelecida pela instância atual da SmtpClient classe para o servidor SMTP poderá ser reutilizada se um aplicativo quiser enviar várias mensagens para o mesmo servidor SMTP.The connection established by the current instance of the SmtpClient class to the SMTP server may be re-used if an application wishes to send multiple messages to the same SMTP server. Isso é particularmente útil quando a autenticação ou criptografia é usada para estabelecer uma conexão com o servidor SMTP.This is particularly useful when authentication or encryption are used establish a connection to the SMTP server. O processo de autenticação e estabelecimento de uma sessão TLS pode ser operações caras.The process of authenticating and establishing a TLS session can be expensive operations. Um requisito para restabelecer uma conexão para cada mensagem ao enviar uma grande quantidade de emails para o mesmo servidor SMTP pode ter um impacto significativo no desempenho.A requirement to re-establish a connection for each message when sending a large quantity of email to the same SMTP server could have a significant impact on performance. Há vários aplicativos de email de alto volume que enviam atualizações de status de email, distribuições de boletim informativo ou alertas de email.There are a number of high-volume email applications that send email status updates, newsletter distributions, or email alerts. Além disso, muitos aplicativos cliente de email dão suporte a um modo offline, no qual os usuários podem compor muitas mensagens de email que são enviadas posteriormente quando uma conexão com o servidor SMTP é estabelecida.Also many email client applications support an off-line mode where users can compose many email messages that are sent later when a connection to the SMTP server is established. É comum que um cliente de email envie todas as mensagens SMTP para um servidor SMTP específico (fornecido pelo provedor de serviços de Internet) que, em seguida, encaminha esse email para outros servidores SMTP.It is typical for an email client to send all SMTP messages to a specific SMTP server (provided by the Internet service provider) that then forwards this email to other SMTP servers.

A SmtpClient implementação de classe agrupa conexões SMTP para que ela possa evitar a sobrecarga de restabelecer uma conexão para cada mensagem para o mesmo servidor.The SmtpClient class implementation pools SMTP connections so that it can avoid the overhead of re-establishing a connection for every message to the same server. Um aplicativo pode reutilizar o mesmo SmtpClient objeto para enviar vários emails diferentes para o mesmo servidor SMTP e para muitos servidores SMTP diferentes.An application may re-use the same SmtpClient object to send many different emails to the same SMTP server and to many different SMTP servers. Como resultado, não há como determinar quando um aplicativo é concluído usando o SmtpClient objeto e ele deve ser limpo.As a result, there is no way to determine when an application is finished using the SmtpClient object and it should be cleaned up.

Quando uma sessão SMTP é concluída e o cliente deseja encerrar a conexão, ele deve enviar uma mensagem de encerramento ao servidor para indicar que não há mais mensagens a serem enviadas.When an SMTP session is finished and the client wishes to terminate the connection, it must send a QUIT message to the server to indicate that it has no more messages to send. Isso permite que o servidor libere recursos associados à conexão do cliente e processe as mensagens que foram enviadas pelo cliente.This allows the server to free up resources associated with the connection from the client and process the messages which were sent by the client.

A SmtpClient classe não tem nenhum Finalize método, portanto, um aplicativo deve chamar Dispose para liberar recursos explicitamente.The SmtpClient class has no Finalize method, so an application must call Dispose to explicitly free up resources. O Dispose método faz a iteração por todas as conexões estabelecidas com o servidor SMTP especificado na Host propriedade e envia uma mensagem de Quit seguida, encerrando normalmente a conexão TCP.The Dispose method iterates through all established connections to the SMTP server specified in the Host property and sends a QUIT message followed by gracefully ending the TCP connection. O Dispose método também libera os recursos não gerenciados usados pelo Socket e, opcionalmente, descarta os recursos gerenciados.The Dispose method also releases the unmanaged resources used by the Socket and optionally disposes of the managed resources.

Chame Dispose quando terminar de usar o SmtpClient .Call Dispose when you are finished using the SmtpClient. O Dispose método deixa o SmtpClient em um estado inutilizável.The Dispose method leaves the SmtpClient in an unusable state. Depois Dispose de chamar, você deve liberar todas as referências para o SmtpClient , para que o coletor de lixo possa recuperar a memória que SmtpClient estava ocupando.After calling Dispose, you must release all references to the SmtpClient so the garbage collector can reclaim the memory that the SmtpClient was occupying.

Construtores

SmtpClient()

Inicializa uma nova instância da classe SmtpClient usando as definições do arquivo de configuração.Initializes a new instance of the SmtpClient class by using configuration file settings.

SmtpClient(String)

Inicializa uma nova instância da classe SmtpClient, que envia o email usando o servidor SMTP especificado.Initializes a new instance of the SmtpClient class that sends email by using the specified SMTP server.

SmtpClient(String, Int32)

Inicializa uma nova instância da classe SmtpClient, que envia emails usando o servidor SMTP e a porta especificados.Initializes a new instance of the SmtpClient class that sends email by using the specified SMTP server and port.

Propriedades

ClientCertificates

Especifique quais certificados devem ser usados para estabelecer a conexão do protocolo SSL.Specify which certificates should be used to establish the Secure Sockets Layer (SSL) connection.

Credentials

Obtém ou define as credenciais usadas para autenticar o remetente.Gets or sets the credentials used to authenticate the sender.

DeliveryFormat

Obtém ou define o formato de entrega usado pelo SmtpClient para enviar email.Gets or sets the delivery format used by SmtpClient to send email.

DeliveryMethod

Especifica como mensagens de email de saída serão tratadas.Specifies how outgoing email messages will be handled.

EnableSsl

Especifica se SmtpClient usa o protocolo SSL para criptografar a conexão.Specify whether the SmtpClient uses Secure Sockets Layer (SSL) to encrypt the connection.

Host

Obtém ou define o nome ou endereço IP do host usado para transações de SMTP.Gets or sets the name or IP address of the host used for SMTP transactions.

PickupDirectoryLocation

Obtém ou define a pasta em que os aplicativos salvam os emails a serem processados pelo servidor SMTP local.Gets or sets the folder where applications save mail messages to be processed by the local SMTP server.

Port

Obtém ou define a porta usada para transações de SMTP.Gets or sets the port used for SMTP transactions.

ServicePoint

Obtém a conexão de rede usada para transmitir a mensagem de email.Gets the network connection used to transmit the email message.

TargetName

Obtém ou define o SPN (Nome do Provedor de Serviços) a ser usado para autenticação ao usar a proteção estendida.Gets or sets the Service Provider Name (SPN) to use for authentication when using extended protection.

Timeout

Obtém ou define um valor que especifica o tempo após o qual uma chamada Send síncrona atinge o tempo limite.Gets or sets a value that specifies the amount of time after which a synchronous Send call times out.

UseDefaultCredentials

Obtém ou define um valor Boolean que controla se o DefaultCredentials é enviado com solicitações.Gets or sets a Boolean value that controls whether the DefaultCredentials are sent with requests.

Métodos

Dispose()

Envia uma mensagem QUIT para o servidor SMTP, normalmente termina a conexão TCP e libera todos os recursos usados pela instância atual da classe SmtpClient.Sends a QUIT message to the SMTP server, gracefully ends the TCP connection, and releases all resources used by the current instance of the SmtpClient class.

Dispose(Boolean)

Envia uma mensagem QUIT para o servidor SMTP, normalmente termina a conexão TCP, libera todos os recursos usados pela instância atual da classe SmtpClient e, opcionalmente, descarta os recursos gerenciados.Sends a QUIT message to the SMTP server, gracefully ends the TCP connection, releases all resources used by the current instance of the SmtpClient class, and optionally disposes of the managed resources.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
OnSendCompleted(AsyncCompletedEventArgs)

Aciona o evento SendCompleted.Raises the SendCompleted event.

Send(MailMessage)

Envia a mensagem especificada para entrega a um servidor SMTP.Sends the specified message to an SMTP server for delivery.

Send(String, String, String, String)

Envia a mensagem de email especificada para entrega a um servidor SMTP.Sends the specified email message to an SMTP server for delivery. O remetente, os destinatários, o assunto e o corpo da mensagem são especificados usando objetos String.The message sender, recipients, subject, and message body are specified using String objects.

SendAsync(MailMessage, Object)

Envia a mensagem de email especificada para entrega a um servidor SMTP.Sends the specified email message to an SMTP server for delivery. Esse método não bloqueia o thread de chamada e permite que o chamador passe um objeto para o método invocado quando a operação é concluída.This method does not block the calling thread and allows the caller to pass an object to the method that is invoked when the operation completes.

SendAsync(String, String, String, String, Object)

Envia uma mensagem de email para entrega a um servidor SMTP.Sends an email message to an SMTP server for delivery. O remetente, os destinatários, o assunto e o corpo da mensagem são especificados usando objetos String.The message sender, recipients, subject, and message body are specified using String objects. Esse método não bloqueia o thread de chamada e permite que o chamador passe um objeto para o método invocado quando a operação é concluída.This method does not block the calling thread and allows the caller to pass an object to the method that is invoked when the operation completes.

SendAsyncCancel()

Cancela uma operação assíncrona para enviar uma mensagem de email.Cancels an asynchronous operation to send an email message.

SendMailAsync(MailMessage)

Envia a mensagem especificada para um servidor SMTP para entrega como uma operação assíncrona.Sends the specified message to an SMTP server for delivery as an asynchronous operation.

SendMailAsync(MailMessage, CancellationToken)

Envia a mensagem especificada para um servidor SMTP para entrega como uma operação assíncrona.Sends the specified message to an SMTP server for delivery as an asynchronous operation.

SendMailAsync(String, String, String, String)

Envia a mensagem especificada para um servidor SMTP para entrega como uma operação assíncrona.Sends the specified message to an SMTP server for delivery as an asynchronous operation. O remetente, os destinatários, o assunto e o corpo da mensagem são especificados usando objetos String.The message sender, recipients, subject, and message body are specified using String objects.

SendMailAsync(String, String, String, String, CancellationToken)

Envia a mensagem especificada a um servidor SMTP para entrega como uma operação assíncrona, usando o remetente, os destinatários, o assunto e as cadeias de caracteres de corpo especificados.Sends the specified message to an SMTP server for delivery as an asynchronous operation, using the specified sender, recipients, subject, and body strings.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Herdado de Object)

Eventos

SendCompleted

Ocorre quando uma operação assíncrona de envio de email é concluída.Occurs when an asynchronous email send operation completes.

Aplica-se a

Confira também