MailAddress Osztály

Definíció

Egy e-mail feladójának vagy címzettjének címét jelöli.

public ref class MailAddress
public class MailAddress
type MailAddress = class
Public Class MailAddress
Öröklődés
MailAddress

Példák

Az alábbi példakód bemutatja, hogy az e-mail küldése a , MailAddressés MailMessage osztályok SmtpClienthasználatával történik.

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

Megjegyzések

Az MailAddress osztályt az SmtpClientMailMessage osztályok használják az e-mailek címadatainak tárolására.

Az e-mail-címek felhasználónévből, állomásnévből és opcionális megjelenítendő névből állnak. DisplayName nem ASCII-karaktereket tartalmazhat, ha kódolja őket.

Az MailAddress osztály a következő e-mail-címformátumokat támogatja:

  • Egyszerű címformátum.user@host Ha nincs beállítva, DisplayName akkor ez a létrehozott e-mail-címformátum.

  • A standard idézett megjelenítendő név formátuma: "display name" <user@host>. Ha egy DisplayName beállítás be van állítva, akkor ez a létrehozott formátum.

    • Ha még nem szerepelnek bennük, a rendszer szögletes zárójeleket ad hozzá a névhez és Host a User névhez. Például "display name" user@host a rendszer a következőre "display name" <user@host>módosul: .
    • Ha még nem tartalmazzák őket, a rendszer idézőjeleket ad hozzá a DisplayName. Például display name <user@host> a rendszer a következőre "display name" <user@host>módosul: .
    • A unicode-karakterek támogatottak a DisplayName tulajdonságban.

E két formátumon belül a következő elemek engedélyezettek:

  • Egy User név idézőjelekkel. Például: "user name"@host.
  • Szögletes tartománykonstansok. Például: <user@[my domain]>.
  • Megjegyzések. Például: (comment)"display name"(comment)<(comment)user(comment)@(comment)domain(comment)>(comment). A megjegyzések el lesznek távolítva az átvitel előtt.
  • .NET 9 és korábbi CSAK: Egymást követő és záró pont a felhasználónevekben. Például: user...name..@host. (10 .NET kezdve az egymást követő pont nem engedélyezett.)

A vesszővel elválaszthatja az e-mail-címek listájának elemeit. Emiatt nem szabad vesszőt használni a listában nem szereplő megjelenítendő nevekben. A következő e-mail-címek engedélyezettek:

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

A következő e-mail-cím nem engedélyezett:

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

Az idézőjelek idézőjeles sztringbe ágyazhatók, de meg kell szökniük. A következő e-mail-címek engedélyezettek:

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

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

A következő e-mail-cím nem engedélyezett:

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

Ha a felhasználónév nincs idézve, a sztring (vagy vessző) kezdete és a cím közötti összes szöveg a DisplayNamemegjegyzések részét képezi. Például:

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

Bár az MailAddress osztály érvényesként fogad el egy e-mail címet, előfordulhat, hogy más levelezőkiszolgálók nem fogadják el az e-mail címet.

Az MailAddress osztály nem támogatja a következő e-mail-címformátumokat:

  • Vegyes idézőjeles és nem kvótált megjelenítendő nevek. Például: display "name" <user@host>.
  • Az IETF által közzétett RFC 2822 3.4. szakaszában meghatározott csoportok.
  • A ( vagy "user".name@host) elavult felhasználónevek formátuma."user"."name"@hostuser."name"@host
  • csak 10-.NET és újabb verziók: Egymást követő pont a felhasználónévben, például user...name@host.com.

Konstruktorok

Name Description
MailAddress(String, String, Encoding)

Inicializálja az MailAddress osztály új példányát a megadott cím, megjelenítendő név és kódolás használatával.

MailAddress(String, String)

Inicializálja az osztály új példányát a MailAddress megadott cím és megjelenítendő név használatával.

MailAddress(String)

Inicializálja az osztály új példányát MailAddress a megadott címmel.

Tulajdonságok

Name Description
Address

Lekéri a példány létrehozásakor megadott e-mail-címet.

DisplayName

Lekéri a megjelenítendő nevet a példány létrehozásakor megadott megjelenítendő névből és címadatokból.

Host

Lekéri a példány létrehozásakor megadott cím gazdagéprészét.

User

Lekéri a felhasználói adatokat a példány létrehozásakor megadott címről.

Metódusok

Name Description
Equals(Object)

Két e-mail-címet hasonlít össze.

GetHashCode()

Egy e-mail-cím kivonatértékét adja vissza.

GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
ToString()

A példány sztring-ábrázolását adja vissza.

A következőre érvényes: