SmtpException Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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
- 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. |