次の方法で共有


SmtpFailedRecipientsException クラス

定義

SmtpClient を使用して電子メールを送信し、その電子メールがすべての受信者に配信できない場合にスローされる例外。

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

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
継承
属性
実装

次のコード例では、メールボックスがビジー状態または使用できなかったために配信されなかった電子メール メッセージを再送信します。

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

注釈

プロパティには InnerExceptions 、電子メールの送信中に受信した例外が含まれます。 一部の受信者にメールが正常に配信された可能性があります。

コンストラクター

SmtpFailedRecipientsException()

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

SmtpFailedRecipientsException クラスの空のインスタンスを初期化します。

SmtpFailedRecipientsException(SerializationInfo, StreamingContext)

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

古い.

SerializationInfo クラスと StreamingContext クラスの指定したインスタンスから、SmtpFailedRecipientsException クラスの新しいインスタンスを初期化します。

SmtpFailedRecipientsException(String)

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

SmtpFailedRecipientsException を指定して、String クラスの新しいインスタンスを初期化します。

SmtpFailedRecipientsException(String, Exception)

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

SmtpFailedRecipientsException と内部 String を指定して、Exception クラスの新しいインスタンスを初期化します。

SmtpFailedRecipientsException(String, SmtpFailedRecipientException[])

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

SmtpFailedRecipientsExceptionString 型の配列を指定して、SmtpFailedRecipientException クラスの新しいインスタンスを初期化します。

プロパティ

Data

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

例外に関する追加のユーザー定義情報を提供する、キーと値のペアのコレクションを取得します。

(継承元 Exception)
FailedRecipient

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

配信が困難な電子メール アドレスを示します。

(継承元 SmtpFailedRecipientException)
HelpLink

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

この例外に関連付けられているヘルプ ファイルへのリンクを取得または設定します。

(継承元 Exception)
HResult

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

特定の例外に割り当てられているコード化数値である HRESULT を取得または設定します。

(継承元 Exception)
InnerException

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

現在の例外の原因となる Exception インスタンスを取得します。

(継承元 Exception)
InnerExceptions

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

SMTP 配信エラーが発生した電子メール受信者を示す 1 つ以上の SmtpFailedRecipientException を取得します。

Message

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

現在の例外を説明するメッセージを取得します。

(継承元 Exception)
Source

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

エラーの原因となるアプリケーションまたはオブジェクトの名前を取得または設定します。

(継承元 Exception)
StackTrace

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

呼び出し履歴で直前のフレームの文字列形式を取得します。

(継承元 Exception)
StatusCode

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

電子メール メッセージが送信されたときに SMTP サーバーによって返されるステータス コードを取得します。

(継承元 SmtpException)
TargetSite

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

現在の例外がスローされたメソッドを取得します。

(継承元 Exception)

メソッド

Equals(Object)

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetBaseException()

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

派生クラスでオーバーライドされた場合、それ以後に発生する 1 つ以上の例外の根本原因である Exception を返します。

(継承元 Exception)
GetHashCode()

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

既定のハッシュ関数として機能します。

(継承元 Object)
GetObjectData(SerializationInfo, StreamingContext)

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

古い.

SerializationInfo インスタンスに、SmtpFailedRecipientsException をシリアル化するために必要なデータを設定します。

GetType()

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

現在のインスタンスのランタイム型を取得します。

(継承元 Exception)
MemberwiseClone()

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

現在の Object の簡易コピーを作成します。

(継承元 Object)
ToString()

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

現在の例外の文字列形式を作成して返します。

(継承元 Exception)

イベント

SerializeObjectState

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

古い.

例外がシリアル化され、例外に関するシリアル化されたデータを含む例外状態オブジェクトが作成されたときに発生します。

(継承元 Exception)

明示的なインターフェイスの実装

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

指定した SmtpFailedRecipientsException インスタンスと SerializationInfo インスタンスから、StreamingContext クラスの新しいインスタンスを初期化します。

適用対象