MailAddress Classe

Definizione

Rappresenta l'indirizzo di un mittente o di un destinatario di posta elettronica.

public ref class MailAddress
public class MailAddress
type MailAddress = class
Public Class MailAddress
Ereditarietà
MailAddress

Esempio

Nell'esempio di codice seguente viene illustrato l'invio di un messaggio di posta elettronica usando le SmtpClientclassi , MailAddresse 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());
    }
}

Commenti

La MailAddress classe viene usata dalle classi e MailMessage per archiviare le informazioni sull'indirizzo SmtpClient per i messaggi di posta elettronica.

Un indirizzo di posta elettronica è costituito da un nome, Host un User nome e facoltativamente un DisplayNameoggetto . L'oggetto DisplayName può contenere caratteri non ASCII se li codifica.

La MailAddress classe supporta i formati di indirizzo di posta elettronica seguenti:

  • Formato di indirizzo semplice di user@host. Se un DisplayName oggetto non è impostato, questo è il formato dell'indirizzo di posta elettronica generato.

  • Formato di nome visualizzato con virgolette standard di "display name" <user@host>. Se un DisplayName oggetto è impostato, questo è il formato generato.

  • Le parentesi graffe vengono aggiunte intorno al nome e Host al User nome, se non sono incluse. Ad esempio, "display name" user@host viene modificato in "display name" <user@host>.

  • Le virgolette vengono aggiunte intorno a DisplayName, se non sono incluse. Ad esempio, display name <user@host> viene modificato in "display name" <user@host>.

  • I caratteri Unicode sono supportati nella DisplayName proprietà.

  • Nome User con virgolette. Ad esempio: "user name"@host.

  • Punti finali e consecutivi nei nomi utente. Ad esempio: user...name..@host.

  • Valori letterali di dominio tra parentesi quadre. Ad esempio: <user@[my domain]>.

  • Commenti. Ad esempio: (comment)"display name"(comment)<(comment)user(comment)@(comment)domain(comment)>(comment). I commenti vengono rimossi prima della trasmissione.

Viene usata una virgola per separare gli elementi in un elenco di indirizzi di posta elettronica. Di conseguenza, una virgola non deve essere usata in nomi di visualizzazione senza virgolette in un elenco. Gli indirizzi di posta elettronica seguenti sono consentiti:

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

L'indirizzo di posta seguente non è consentito:

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

Le virgolette possono essere incorporate in una stringa con virgolette, ma devono essere escape. Gli indirizzi di posta elettronica seguenti sono consentiti:

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

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

L'indirizzo di posta seguente non è consentito:

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

Quando il nome utente non viene citato, tutto il testo tra l'inizio della stringa (o la virgola) e l'indirizzo vengono considerati parte di DisplayName, inclusi i commenti. Ad esempio:

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

Anche se la MailAddress classe accetta un indirizzo di posta elettronica come valido, altri server di posta elettronica potrebbero non accettare l'indirizzo di posta elettronica.

La MailAddress classe non supporta i formati di indirizzo di posta elettronica seguenti:

  • Nomi visualizzati con virgolette miste e senza virgolette. Ad esempio: display "name" <user@host>.

  • Gruppi, come definito nella sezione RFC 2822 Sezione 3.4 pubblicata da IETF.

  • Formati di nome utente obsoleti di "user"."name"@hosto user."name"@host "user".name@host.

Costruttori

MailAddress(String)

Inizializza un'istanza nuova della classe MailAddress usando l'indirizzo specificato.

MailAddress(String, String)

Inizializza un'istanza nuova della classe MailAddress usando l'indirizzo e il nome visualizzato specificati.

MailAddress(String, String, Encoding)

Inizializza una nuova istanza della classe MailAddress utilizzando l'indirizzo, il nome visualizzato e la codifica specificati.

Proprietà

Address

Ottiene l'indirizzo di posta elettronica specificato quando è stata creata questa istanza.

DisplayName

Ottiene il nome visualizzato composto dalle informazioni sul nome visualizzato e sull'indirizzo specificate quando è stata creata questa istanza.

Host

Ottiene la parte che definisce l'host dell'indirizzo specificato quando è stata creata questa istanza.

User

Ottiene le informazioni sull'utente dall'indirizzo specificato quando è stata creata questa istanza.

Metodi

Equals(Object)

Confronta due indirizzi di posta.

GetHashCode()

Restituisce un valore hash per un indirizzo di posta.

GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Restituisce una rappresentazione in forma di stringa di questa istanza.

TryCreate(String, MailAddress)

Crea un nuovo oggetto MailAddress. Non genera un'eccezione se l'oggetto non può essere creato.

TryCreate(String, String, Encoding, MailAddress)

Creare un nuovo oggetto MailAddress. Non genera un'eccezione se l'oggetto non può essere creato.

TryCreate(String, String, MailAddress)

Creare un nuovo oggetto MailAddress. Non genera un'eccezione se l'oggetto non può essere creato.

Si applica a