SmtpException Classe

Definição

Representa a exceção que é lançada quando o SmtpClient não consegue completar uma Send operação ou SendAsync .

public ref class SmtpException : Exception
[System.Serializable]
public class SmtpException : Exception
public class SmtpException : Exception
[<System.Serializable>]
type SmtpException = class
    inherit Exception
    interface ISerializable
type SmtpException = class
    inherit Exception
    interface ISerializable
Public Class SmtpException
Inherits Exception
Herança
SmtpException
Derivado
Atributos
Implementações

Exemplos

O exemplo de código seguinte apresenta uma mensagem de erro quando a SmtpException exceção é lançada.

public static void RetryIfBusy(string server)
{
    MailAddress from = new MailAddress("ben@contoso.com");
    MailAddress to = new MailAddress("jane@contoso.com");
    MailMessage message = new MailMessage(from, to);
    // message.Subject = "Using the SmtpClient class.";
    message.Subject = "Using the SmtpClient class.";
    message.Body = @"Using this feature, you can send an email message from an application very easily.";
    // Add a carbon copy recipient.
    MailAddress copy = new MailAddress("Notifications@contoso.com");
    message.CC.Add(copy);
    SmtpClient client = new SmtpClient(server);
    // Include credentials if the server requires them.
    client.Credentials = (ICredentialsByHost)CredentialCache.DefaultNetworkCredentials;
    Console.WriteLine("Sending an email message to {0} using the SMTP host {1}.",
         to.Address, client.Host);
    try
    {
        client.Send(message);
    }
    catch (SmtpFailedRecipientsException ex)
    {
        for (int i = 0; i < ex.InnerExceptions.Length; i++)
        {
            SmtpStatusCode status = ex.InnerExceptions[i].StatusCode;
            if (status == SmtpStatusCode.MailboxBusy ||
                status == SmtpStatusCode.MailboxUnavailable)
            {
                Console.WriteLine("Delivery failed - retrying in 5 seconds.");
                System.Threading.Thread.Sleep(5000);
                client.Send(message);
            }
            else
            {
                Console.WriteLine("Failed to deliver message to {0}",
                    ex.InnerExceptions[i].FailedRecipient);
            }
        }
    }
    catch (Exception ex)
    {
        Console.WriteLine("Exception caught in RetryIfBusy(): {0}",
                ex.ToString());
    }
}

Observações

A StatusCode propriedade contém o código de estado devolvido pelo servidor SMTP.

Construtores

Name Description
SmtpException()

Inicializa uma nova instância da SmtpException classe.

SmtpException(SerializationInfo, StreamingContext)

Inicializa uma nova instância da SmtpException classe a partir das instâncias especificadas das SerializationInfo classes e StreamingContext .

SmtpException(SmtpStatusCode, String)

Inicializa uma nova instância da SmtpException classe com o código de estado especificado e a mensagem de erro.

SmtpException(SmtpStatusCode)

Inicializa uma nova instância da SmtpException classe com o código de estado especificado.

SmtpException(String, Exception)

Inicializa uma nova instância da SmtpException classe com a mensagem de erro especificada e a exceção interna.

SmtpException(String)

Inicializa uma nova instância da SmtpException classe com a mensagem de erro especificada.

Propriedades

Name Description
Data

Obtém uma coleção de pares chave/valor que fornecem informação adicional definida pelo utilizador sobre a exceção.

(Herdado de Exception)
HelpLink

Obtém ou define um link para o ficheiro de ajuda associado a esta exceção.

(Herdado de Exception)
HResult

Recebe ou define HRESULT, um valor numérico codificado atribuído a uma exceção específica.

(Herdado de Exception)
InnerException

Obtém a Exception instância que causou a exceção atual.

(Herdado de Exception)
Message

Recebe uma mensagem que descreve a exceção atual.

(Herdado de Exception)
Source

Obtém ou define o nome do aplicativo ou o objeto que causa o erro.

(Herdado de Exception)
StackTrace

Obtém uma representação string dos frames imediatos na stack de chamadas.

(Herdado de Exception)
StatusCode

Recebe o código de estado devolvido por um servidor SMTP quando uma mensagem de email é transmitida.

TargetSite

Obtém o método que lança a exceção atual.

(Herdado de Exception)

Métodos

Name Description
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetBaseException()

Quando sobrescrito numa classe derivada, devolve o Exception que é a causa raiz de uma ou mais exceções subsequentes.

(Herdado de Exception)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetObjectData(SerializationInfo, StreamingContext)

Preenche uma SerializationInfo instância com os dados necessários para serializar o SmtpException.

GetType()

Obtém o tipo de execução da instância atual.

(Herdado de Exception)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
ToString()

Cria e devolve uma representação string da exceção atual.

(Herdado de Exception)

evento

Name Description
SerializeObjectState

Ocorre quando uma exceção é serializada para criar um objeto de estado de exceção que contém dados serializados sobre a exceção.

(Herdado de Exception)

Implementações de Interface Explícita

Name Description
ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Preenche uma SerializationInfo instância com os dados necessários para serializar o SmtpException.

Aplica-se a