SmtpFailedRecipientsException Class

 

This API supports the product infrastructure and is not intended to be used directly from your code.

The exception that is thrown when e-mail is sent using an SmtpClient and cannot be delivered to all recipients.

Namespace:   System.Net.Mail
Assembly:  System (in System.dll)

System::Object
  System::Exception
    System.Net.Mail::SmtpException
      System.Net.Mail::SmtpFailedRecipientException
        System.Net.Mail::SmtpFailedRecipientsException

[SerializableAttribute]
public ref class SmtpFailedRecipientsException : SmtpFailedRecipientException, 
	ISerializable

NameDescription
System_CAPS_pubmethodSmtpFailedRecipientsException()

This API supports the product infrastructure and is not intended to be used directly from your code. Initializes an empty instance of the SmtpFailedRecipientsException class.

System_CAPS_protmethodSmtpFailedRecipientsException(SerializationInfo^, StreamingContext)

This API supports the product infrastructure and is not intended to be used directly from your code. Initializes a new instance of the SmtpFailedRecipientsException class from the specified instances of the SerializationInfo and StreamingContext classes.

System_CAPS_pubmethodSmtpFailedRecipientsException(String^)

This API supports the product infrastructure and is not intended to be used directly from your code. Initializes a new instance of the SmtpFailedRecipientsException class with the specified String.

System_CAPS_pubmethodSmtpFailedRecipientsException(String^, Exception^)

This API supports the product infrastructure and is not intended to be used directly from your code. Initializes a new instance of the SmtpFailedRecipientsException class with the specified String and inner Exception.

System_CAPS_pubmethodSmtpFailedRecipientsException(String^, array<SmtpFailedRecipientException^>^)

This API supports the product infrastructure and is not intended to be used directly from your code. Initializes a new instance of the SmtpFailedRecipientsException class with the specified String and array of type SmtpFailedRecipientException.

NameDescription
System_CAPS_pubpropertyData

Gets a collection of key/value pairs that provide additional user-defined information about the exception.(Inherited from Exception.)

System_CAPS_pubpropertyFailedRecipient

Indicates the e-mail address with delivery difficulties.(Inherited from SmtpFailedRecipientException.)

System_CAPS_pubpropertyHelpLink

Gets or sets a link to the help file associated with this exception.(Inherited from Exception.)

System_CAPS_pubpropertyHResult

Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.(Inherited from Exception.)

System_CAPS_pubpropertyInnerException

Gets the Exception instance that caused the current exception.(Inherited from Exception.)

System_CAPS_pubpropertyInnerExceptions

This API supports the product infrastructure and is not intended to be used directly from your code. Gets one or more SmtpFailedRecipientExceptions that indicate the e-mail recipients with SMTP delivery errors.

System_CAPS_pubpropertyMessage

Gets a message that describes the current exception.(Inherited from Exception.)

System_CAPS_pubpropertySource

Gets or sets the name of the application or the object that causes the error.(Inherited from Exception.)

System_CAPS_pubpropertyStackTrace

Gets a string representation of the immediate frames on the call stack.(Inherited from Exception.)

System_CAPS_pubpropertyStatusCode

Gets the status code returned by an SMTP server when an e-mail message is transmitted.(Inherited from SmtpException.)

System_CAPS_pubpropertyTargetSite

Gets the method that throws the current exception.(Inherited from Exception.)

NameDescription
System_CAPS_pubmethodEquals(Object^)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_protmethodFinalize()

Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)

System_CAPS_pubmethodGetBaseException()

When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.(Inherited from Exception.)

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetObjectData(SerializationInfo^, StreamingContext)

This API supports the product infrastructure and is not intended to be used directly from your code. Populates a SerializationInfo instance with the data that is needed to serialize the SmtpFailedRecipientsException.(Overrides SmtpFailedRecipientException::GetObjectData(SerializationInfo^, StreamingContext).)

System_CAPS_pubmethodGetType()

Gets the runtime type of the current instance.(Inherited from Exception.)

System_CAPS_protmethodMemberwiseClone()

Creates a shallow copy of the current Object.(Inherited from Object.)

System_CAPS_pubmethodToString()

Creates and returns a string representation of the current exception.(Inherited from Exception.)

NameDescription
System_CAPS_proteventSerializeObjectState

Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.(Inherited from Exception.)

NameDescription
System_CAPS_pubinterfaceSystem_CAPS_privmethodISerializable::GetObjectData(SerializationInfo^, StreamingContext)

This API supports the product infrastructure and is not intended to be used directly from your code. Initializes a new instance of the SmtpFailedRecipientsException class from the specified SerializationInfo and StreamingContext instances.

The InnerExceptions property contains the exceptions received while attempting to send e-mail. The e-mail might have been successfully delivered to some of the recipients.

The following code example resends an e-mail message that was not delivered because a mailbox was busy or unavailable.

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 e-mail 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 e-mail 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();
   }
}


.NET Framework
Available since 2.0

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: