MailAddress Klasa

Definicja

Reprezentuje adres nadawcy lub adresata poczty elektronicznej.

public ref class MailAddress
public class MailAddress
type MailAddress = class
Public Class MailAddress
Dziedziczenie
MailAddress

Przykłady

Poniższy przykład kodu przedstawia wysyłanie wiadomości e-mail przy użyciu SmtpClientklas , MailAddressi MailMessage .

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

Uwagi

Klasa MailAddress jest używana przez SmtpClient klasy i MailMessage do przechowywania informacji o adresie dla wiadomości e-mail.

Adres e-mail składa się z User nazwy, Host nazwy i opcjonalnie .DisplayName Może DisplayName zawierać znaki inne niż ASCII, jeśli je zakodujesz.

Klasa MailAddress obsługuje następujące formaty adresów e-mail:

  • Prosty format adresu .user@host Jeśli parametr DisplayName nie jest ustawiony, jest to wygenerowany format adresu e-mail.

  • Standardowy format nazwy wyświetlanej w cudzysłów ."display name" <user@host> DisplayName Jeśli element jest ustawiony, jest to wygenerowany format.

    • Nawiasy kątowe są dodawane wokół User nazwy i Host nazwy, jeśli nie są one uwzględnione. Na przykład "display name" user@host parametr jest zmieniany na "display name" <user@host>.

    • Cudzysłowy są dodawane wokół DisplayNameelementu , jeśli nie są uwzględniane. Na przykład display name <user@host> parametr jest zmieniany na "display name" <user@host>.

    • Znaki Unicode są obsługiwane we DisplayName właściwości .

W tych dwóch formatach dozwolone są następujące elementy:

  • User Nazwa z cudzysłowami. Na przykład "user name"@host.

  • Kolejne i końcowe kropki w nazwach użytkowników. Na przykład user...name..@host.

  • Literały domeny w nawiasach kwadratowych. Na przykład <user@[my domain]>.

  • Komentarze. Na przykład (comment)"display name"(comment)<(comment)user(comment)@(comment)domain(comment)>(comment). Komentarze są usuwane przed przesłaniem.

Przecinek służy do oddzielania elementów na liście adresów e-mail. W związku z tym przecinek nie powinien być używany w nazwach wyświetlanych bez cudzysłów na liście. Następujące adresy e-mail będą dozwolone:

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

Następujący adres e-mail nie będzie dozwolony:

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

Cudzysłów można osadzić w cudzysłowie, ale muszą zostać uniknięci. Następujące adresy e-mail będą dozwolone:

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

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

Następujący adres e-mail nie będzie dozwolony:

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

Gdy nazwa użytkownika nie jest cytowana, cały tekst między rozpoczęciem ciągu (lub przecinkiem) i adresem są traktowane jako część DisplayNameobiektu , w tym komentarze. Na przykład:

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

MailAddress Mimo że klasa akceptuje adres e-mail jako prawidłowy, inne serwery poczty mogą nie akceptować adresu e-mail.

Klasa MailAddress nie obsługuje następujących formatów adresów e-mail:

  • Nazwy wyświetlane w cudzysłów i bez cudzysłów. Na przykład display "name" <user@host>.

  • Grupy zdefiniowane w dokumencie RFC 2822 Sekcja 3.4 opublikowane przez IETF.

  • Przestarzałe formaty nazw użytkowników , "user"."name"@hostuser."name"@host lub "user".name@host.

Konstruktory

MailAddress(String)

Inicjuje MailAddress nowe wystąpienie klasy przy użyciu określonego adresu.

MailAddress(String, String)

Inicjuje MailAddress nowe wystąpienie klasy przy użyciu określonego adresu i nazwy wyświetlanej.

MailAddress(String, String, Encoding)

Inicjuje MailAddress nowe wystąpienie klasy przy użyciu określonego adresu, nazwy wyświetlanej i kodowania.

Właściwości

Address

Pobiera adres e-mail określony podczas tworzenia tego wystąpienia.

DisplayName

Pobiera nazwę wyświetlaną utworzoną na podstawie nazwy wyświetlanej i informacji o adresie określonym podczas tworzenia tego wystąpienia.

Host

Pobiera część adresu hosta określoną podczas tworzenia tego wystąpienia.

User

Pobiera informacje o użytkowniku z adresu określonego podczas tworzenia tego wystąpienia.

Metody

Equals(Object)

Porównuje dwa adresy e-mail.

GetHashCode()

Zwraca wartość skrótu dla adresu e-mail.

GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca reprezentację ciągu tego wystąpienia.

TryCreate(String, MailAddress)

Tworzy nowy adres MailAddress. Nie zgłasza wyjątku, jeśli nie można utworzyć obiektu.

TryCreate(String, String, Encoding, MailAddress)

Utwórz nowy element MailAddress. Nie zgłasza wyjątku, jeśli nie można utworzyć obiektu.

TryCreate(String, String, MailAddress)

Utwórz nowy element MailAddress. Nie zgłasza wyjątku, jeśli nie można utworzyć obiektu.

Dotyczy