MailAddress クラス

定義

電子メールの差出人または受信者のアドレスを表します。

public ref class MailAddress
public class MailAddress
type MailAddress = class
Public Class MailAddress
継承
MailAddress

次のコード例では、および MailMessage クラスを使用して電子メール メッセージを送信する方法をSmtpClientMailAddress示します。

static void CreateCopyMessage( String^ server )
{
   MailAddress^ from = gcnew MailAddress( L"ben@contoso.com",L"Ben Miller" );
   MailAddress^ to = gcnew MailAddress( L"jane@contoso.com",L"Jane Clayton" );
   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"Notification_List@contoso.com" );
   message->CC->Add( copy );
   SmtpClient^ client = gcnew SmtpClient( server );
   
   // Include credentials if the server requires them.
   client->Credentials = CredentialCache::DefaultNetworkCredentials;
   Console::WriteLine( L"Sending an email message to {0} by using the SMTP host {1}.", to->Address, client->Host );
   client->Send( message );
   client->~SmtpClient();
}
public static void CreateCopyMessage(string server)
{
    MailAddress from = new MailAddress("ben@contoso.com", "Ben Miller");
    MailAddress to = new MailAddress("jane@contoso.com", "Jane Clayton");
    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("Notification_List@contoso.com");
    message.CC.Add(copy);
    SmtpClient client = new SmtpClient(server);
    // Include credentials if the server requires them.
    client.Credentials = CredentialCache.DefaultNetworkCredentials;
    Console.WriteLine("Sending an email message to {0} by using the SMTP host {1}.",
         to.Address, client.Host);

    try
    {
        client.Send(message);
    }
    catch (Exception ex)
    {
        Console.WriteLine("Exception caught in CreateCopyMessage(): {0}",
            ex.ToString());
    }
}

注釈

クラスはMailAddress、 クラスと MailMessage クラスがSmtpClient電子メール メッセージのアドレス情報を格納するために使用されます。

メール アドレスは、名前、名前、Hostおよび必要にDisplayName応じて で構成Userされます。 エンコードする場合、 には DisplayName ASCII 以外の文字を含めることができます。

クラスは MailAddress 、次のメール アドレス形式をサポートしています。

  • の単純なアドレス形式 user@hostDisplayNameが設定されていない場合、これは生成されるメール アドレス形式です。

  • 標準の引用符で囲まれた表示名の "display name" <user@host>形式。 DisplayNameが設定されている場合、これは生成される形式です。

    • 名前と名前が含まれていない場合は、山かっこが名前のHost周囲Userに追加されます。 たとえば、 "display name" user@host は に "display name" <user@host>変更されます。

    • 引用符が含まれていない場合は、 の DisplayName周囲に引用符が追加されます。 たとえば、 display name <user@host> は に "display name" <user@host>変更されます。

    • Unicode 文字は、 プロパティで DisplayName サポートされています。

これら 2 つの形式では、次の要素を使用できます。

  • User引用符で囲まれた名前。 たとえば、「 "user name"@host 」のように入力します。

  • ユーザー名の連続するドットと末尾のドット。 たとえば、「 user...name..@host 」のように入力します。

  • 角かっこで囲まれたドメイン リテラル。 たとえば、「 <user@[my domain]> 」のように入力します。

  • [コメント]: たとえば、「 (comment)"display name"(comment)<(comment)user(comment)@(comment)domain(comment)>(comment) 」のように入力します。 コメントは送信前に削除されます。

コンマは、メール アドレスのリスト内の要素を区切るために使用されます。 そのため、リスト内の引用符で囲まれていない表示名にはコンマを使用しないでください。 次のメール アドレスが許可されます。

"John, Doe" <user@host>, "Bob, Smith" <user2@host>

次のメール アドレスは許可されません。

John, Doe <user@host>, Bob, Smith <user2@host>

引用符は引用符で囲まれた文字列に埋め込むことができますが、エスケープする必要があります。 次のメール アドレスが許可されます。

"John \"Jr\" Doe" <user@host>

"\"John \\\"Jr\\\" Doe\" <user@host>"

次のメール アドレスは許可されません。

"John "Jr" Doe" <user@host>

ユーザー名が引用符で囲まれていない場合、文字列の先頭 (またはコンマ) とアドレスの間のすべてのテキストは、コメントを含む の DisplayName一部と見なされます。 次に例を示します。

(non comment) unquoted display (non comment) name (non comment) <user@host>

クラスは MailAddress メール アドレスを有効として受け入れますが、他のメール サーバーはメール アドレスを受け入れられない場合があります。

クラスは MailAddress 、次のメール アドレス形式をサポートしていません。

  • 引用符で囲まれた表示名と引用符で囲まれていない表示名の混在。 たとえば、「 display "name" <user@host> 」のように入力します。

  • IETF によって公開された RFC 2822 セクション 3.4 で定義されているグループ。

  • 、または "user".name@hostの古いユーザー名形式。"user"."name"@hostuser."name"@host

コンストラクター

MailAddress(String)

指定したアドレスを使用して、MailAddress クラスの新しいインスタンスを初期化します。

MailAddress(String, String)

アドレスと表示名を指定して、MailAddress クラスの新しいインスタンスを初期化します。

MailAddress(String, String, Encoding)

アドレス、表示名、およびエンコーディングを指定して、MailAddress クラスの新しいインスタンスを初期化します。

プロパティ

Address

このインスタンスが作成されたときに指定された電子メール アドレスを取得します。

DisplayName

このインスタンスが作成されたときに指定された表示名とアドレス情報で構成される表示名を取得します。

Host

このインスタンスが作成されたときに指定されたアドレスのホスト部分を取得します。

User

このインスタンスが作成されたときに指定されたアドレスからユーザー情報を取得します。

メソッド

Equals(Object)

2 つのメール アドレスを比較します。

GetHashCode()

メール アドレスのハッシュ値を返します。

GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

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

(継承元 Object)
ToString()

このインスタンスの文字列形式を返します。

TryCreate(String, MailAddress)

新しい MailAddress を作成します。 オブジェクトを作成できない場合でも、例外はスローされません。

TryCreate(String, String, Encoding, MailAddress)

新規の MailAddress を作成します。 オブジェクトを作成できない場合でも、例外はスローされません。

TryCreate(String, String, MailAddress)

新規の MailAddress を作成します。 オブジェクトを作成できない場合でも、例外はスローされません。

適用対象