SmtpFailedRecipientsException Classe

Definizione

Eccezione generata se il messaggio di posta elettronica viene inviato usando un SmtpClient e non viene recapitato a tutti i destinatari.

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

public ref class SmtpFailedRecipientsException : System::Net::Mail::SmtpFailedRecipientException
public class SmtpFailedRecipientsException : System.Net.Mail.SmtpFailedRecipientException
[System.Serializable]
public class SmtpFailedRecipientsException : System.Net.Mail.SmtpFailedRecipientException
type SmtpFailedRecipientsException = class
    inherit SmtpFailedRecipientException
    interface ISerializable
[<System.Serializable>]
type SmtpFailedRecipientsException = class
    inherit SmtpFailedRecipientException
    interface ISerializable
Public Class SmtpFailedRecipientsException
Inherits SmtpFailedRecipientException
Ereditarietà
Attributi
Implementazioni

Esempio

L'esempio di codice seguente invia nuovamente un messaggio di posta elettronica che non è stato recapitato perché una cassetta postale è stata occupato o non disponibile.

static void RetryIfBusy( String^ server )
{
   MailAddress^ from = gcnew MailAddress( L"ben@contoso.com" );
   MailAddress^ to = gcnew MailAddress( L"jane@contoso.com" );
   MailMessage^ message = gcnew MailMessage( from,to );
   
   // message.Subject = "Using the SmtpClient class.";
   message->Subject = L"Using the SmtpClient class.";
   message->Body = L"Using this feature, you can send an email message from an application very easily.";
   
   // Add a carbon copy recipient.
   MailAddress^ copy = gcnew MailAddress( L"Notifications@contoso.com" );
   message->CC->Add( copy );
   SmtpClient^ client = gcnew SmtpClient( server );
   
   // Include credentials if the server requires them.
   client->Credentials = dynamic_cast<ICredentialsByHost^>(CredentialCache::DefaultNetworkCredentials);
   Console::WriteLine( L"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( L"Delivery failed - retrying in 5 seconds." );
            System::Threading::Thread::Sleep( 5000 );
            client->Send( message );
         }
         else
         {
            Console::WriteLine( L"Failed to deliver message to {0}", ex->InnerExceptions[ i ] );
         }

      }
   }
   catch ( Exception^ ex )
   {
       Console::WriteLine(L"Exception caught in RetryIfBusy(): {0}", 
                     ex->ToString() );
   }
   finally
   {
      client->~SmtpClient();
   }
}
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() );
    }
}

Commenti

La InnerExceptions proprietà contiene le eccezioni ricevute durante il tentativo di inviare un messaggio di posta elettronica. Il messaggio di posta elettronica potrebbe essere stato recapitato correttamente ad alcuni dei destinatari.

Costruttori

SmtpFailedRecipientsException()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Inizializza un'istanza vuota della classe SmtpFailedRecipientsException.

SmtpFailedRecipientsException(SerializationInfo, StreamingContext)

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Inizializza una nuova istanza della classe SmtpFailedRecipientsException dalle istanze specificate delle classi SerializationInfo e StreamingContext.

SmtpFailedRecipientsException(String)

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Inizializza una nuova istanza della classe SmtpFailedRecipientsException con l'oggetto String specificato.

SmtpFailedRecipientsException(String, Exception)

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Inizializza una nuova istanza della classe SmtpFailedRecipientsException con la classe String specificata e la classe Exception interna.

SmtpFailedRecipientsException(String, SmtpFailedRecipientException[])

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Inizializza una nuova istanza della classe SmtpFailedRecipientsException con la classe String specificata e la matrice di tipo SmtpFailedRecipientException.

Proprietà

Data

Ottiene una raccolta di coppie chiave/valore che forniscono informazioni definite dall'utente aggiuntive sull'eccezione.

(Ereditato da Exception)
FailedRecipient

Indica l'indirizzo di posta elettronica con problemi di consegna.

(Ereditato da SmtpFailedRecipientException)
HelpLink

Ottiene o imposta un collegamento al file della Guida associato all'eccezione.

(Ereditato da Exception)
HResult

Ottiene o imposta HRESULT, un valore numerico codificato che viene assegnato a un'eccezione specifica.

(Ereditato da Exception)
InnerException

Ottiene l'istanza di Exception che ha causato l'eccezione corrente.

(Ereditato da Exception)
InnerExceptions

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Ottiene una o più SmtpFailedRecipientException che indicano i destinatari dei messaggi di posta elettronica con errori di consegna SMTP.

Message

Ottiene un messaggio che descrive l'eccezione corrente.

(Ereditato da Exception)
Source

Ottiene o imposta il nome dell'oggetto o dell'applicazione che ha generato l'errore.

(Ereditato da Exception)
StackTrace

Ottiene una rappresentazione di stringa dei frame immediati nello stack di chiamate.

(Ereditato da Exception)
StatusCode

Ottiene il codice di stato restituito da un server SMTP quando viene trasmesso un messaggio di posta elettronica.

(Ereditato da SmtpException)
TargetSite

Ottiene il metodo che genera l'eccezione corrente.

(Ereditato da Exception)

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetBaseException()

Quando ne viene eseguito l'override in una classe derivata, restituisce l'Exception che è la causa radice di una o più eccezioni successive.

(Ereditato da Exception)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetObjectData(SerializationInfo, StreamingContext)

Compila un'istanza di SerializationInfo con i dati necessari per serializzare l'oggetto SmtpFailedRecipientsException.

GetType()

Ottiene il tipo di runtime dell'istanza corrente.

(Ereditato da Exception)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Crea e restituisce una rappresentazione di stringa dell'eccezione corrente.

(Ereditato da Exception)

Eventi

SerializeObjectState
Obsoleta.

Si verifica quando un'eccezione viene serializzata per creare un oggetto di stato eccezione contenente i dati serializzati relativi all'eccezione.

(Ereditato da Exception)

Implementazioni dell'interfaccia esplicita

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Inizializza una nuova istanza della classe SmtpFailedRecipientsException dalle istanze di SerializationInfo e StreamingContext specificate.

Si applica a