Condividi tramite


SmtpFailedRecipientsException Classe

Definizione

Eccezione generata quando il messaggio di posta elettronica viene inviato tramite un SmtpClient e non può essere 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
type SmtpFailedRecipientsException = class
    inherit SmtpFailedRecipientException
[<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 era occupata 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 proprietà InnerExceptions contiene le eccezioni ricevute durante il tentativo di invio di messaggi di posta elettronica. Il messaggio di posta elettronica potrebbe essere stato recapitato correttamente ad alcuni 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.

Obsoleti.

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

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 l'String e il Exceptioninterno specificati.

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 il String specificato e la matrice di tipo SmtpFailedRecipientException.

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 il Stringspecificato.

Proprietà

Data

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

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

(Ereditato da Exception)
FailedRecipient

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

Indica l'indirizzo di posta elettronica con difficoltà di recapito.

(Ereditato da SmtpFailedRecipientException)
HelpLink

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

Ottiene o imposta un collegamento al file della Guida associato a questa eccezione.

(Ereditato da Exception)
HResult

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

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

(Ereditato da Exception)
InnerException

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

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 uno o più SmtpFailedRecipientExceptionche indicano i destinatari di posta elettronica con errori di recapito SMTP.

Message

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

Ottiene un messaggio che descrive l'eccezione corrente.

(Ereditato da Exception)
Source

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

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

(Ereditato da Exception)
StackTrace

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

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

(Ereditato da Exception)
StatusCode

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

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

(Ereditato da SmtpException)
TargetSite

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

Ottiene il metodo che genera l'eccezione corrente.

(Ereditato da Exception)

Metodi

Equals(Object)

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

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

(Ereditato da Object)
GetBaseException()

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

Quando sottoposto a override in una classe derivata, restituisce il Exception che rappresenta la causa radice di una o più eccezioni successive.

(Ereditato da Exception)
GetHashCode()

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

Funge da funzione hash predefinita.

(Ereditato da Object)
GetObjectData(SerializationInfo, StreamingContext)

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

Obsoleti.

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

GetType()

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

Ottiene il tipo di runtime dell'istanza corrente.

(Ereditato da Exception)
MemberwiseClone()

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

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
ToString()

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

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

(Ereditato da Exception)

Eventi

SerializeObjectState

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

Obsoleti.

Si verifica quando viene serializzata un'eccezione per creare un oggetto stato dell'eccezione contenente dati serializzati sull'eccezione.

(Ereditato da Exception)

Implementazioni dell'interfaccia esplicita

ISerializable.GetObjectData(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 di SerializationInfo e StreamingContext specificate.

Si applica a