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.
Assembly: System (in System.dll)
System::Exception
System.Net.Mail::SmtpException
System.Net.Mail::SmtpFailedRecipientException
System.Net.Mail::SmtpFailedRecipientsException
| Name | Description | |
|---|---|---|
![]() | SmtpFailedRecipientsException() | 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. |
![]() | SmtpFailedRecipientsException(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. |
![]() | SmtpFailedRecipientsException(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. |
![]() | SmtpFailedRecipientsException(String^, Exception^) | |
![]() | SmtpFailedRecipientsException(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. |
| Name | Description | |
|---|---|---|
![]() | Data | Gets a collection of key/value pairs that provide additional user-defined information about the exception.(Inherited from Exception.) |
![]() | FailedRecipient | Indicates the e-mail address with delivery difficulties.(Inherited from SmtpFailedRecipientException.) |
![]() | HelpLink | Gets or sets a link to the help file associated with this exception.(Inherited from Exception.) |
![]() | HResult | Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.(Inherited from Exception.) |
![]() | InnerException | |
![]() | InnerExceptions | 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. |
![]() | Message | Gets a message that describes the current exception.(Inherited from Exception.) |
![]() | Source | Gets or sets the name of the application or the object that causes the error.(Inherited from Exception.) |
![]() | StackTrace | Gets a string representation of the immediate frames on the call stack.(Inherited from Exception.) |
![]() | StatusCode | Gets the status code returned by an SMTP server when an e-mail message is transmitted.(Inherited from SmtpException.) |
![]() | TargetSite | Gets the method that throws the current exception.(Inherited from Exception.) |
| Name | Description | |
|---|---|---|
![]() | Equals(Object^) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | Finalize() | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.) |
![]() | GetBaseException() | |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetObjectData(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).) |
![]() | GetType() | Gets the runtime type of the current instance.(Inherited from Exception.) |
![]() | MemberwiseClone() | |
![]() | ToString() | Creates and returns a string representation of the current exception.(Inherited from Exception.) |
| Name | Description | |
|---|---|---|
![]() | SerializeObjectState | Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.(Inherited from Exception.) |
| Name | Description | |
|---|---|---|
![]() ![]() | ISerializable::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(); } }
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.





