Partilhar via


MailAddress Classe

Definição

Representa o endereço de um remetente ou destinatário de email.

public ref class MailAddress
public class MailAddress
type MailAddress = class
Public Class MailAddress
Herança
MailAddress

Exemplos

O exemplo de código a seguir demonstra o envio de uma mensagem de email usando as SmtpClientclasses , 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());
    }
}

Comentários

A MailAddress classe é usada pelas SmtpClient classes e MailMessage para armazenar informações de endereço para mensagens de email.

Um endereço de email é composto por um User nome, um nome e, Host opcionalmente, um DisplayName. O DisplayName poderá conter caracteres não ASCII se você codificá-los.

A MailAddress classe dá suporte aos seguintes formatos de endereço de email:

  • Um formato de endereço simples de user@host. Se um DisplayName não estiver definido, esse será o formato de endereço de email gerado.

  • Um formato de nome de exibição entre aspas padrão de "display name" <user@host>. Se um DisplayName for definido, esse será o formato gerado.

    • Colchetes angulares serão adicionados ao redor do User nome e Host do nome, se eles não estiverem incluídos. Por exemplo, "display name" user@host é alterado para "display name" <user@host>.

    • Aspas serão adicionadas ao redor de DisplayName, se elas não estiverem incluídas. Por exemplo, display name <user@host> é alterado para "display name" <user@host>.

    • Há suporte para caracteres Unicode na DisplayName propriedade .

Nesses dois formatos, os seguintes elementos são permitidos:

  • Um User nome com aspas. Por exemplo, "user name"@host.

  • Pontos consecutivos e à direita em nomes de usuário. Por exemplo, user...name..@host.

  • Literais de domínio entre colchetes. Por exemplo, <user@[my domain]>.

  • Comentários. Por exemplo, (comment)"display name"(comment)<(comment)user(comment)@(comment)domain(comment)>(comment). Os comentários são removidos antes da transmissão.

Uma vírgula é usada para separar elementos em uma lista de endereços de email. Como resultado, uma vírgula não deve ser usada em nomes de exibição não citados em uma lista. Os seguintes endereços de email seriam permitidos:

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

O seguinte endereço de email não seria permitido:

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

As aspas podem ser inseridas em uma cadeia de caracteres entre aspas, mas devem ser escapadas. Os seguintes endereços de email seriam permitidos:

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

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

O seguinte endereço de email não seria permitido:

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

Quando o nome de usuário não é citado, todo o texto entre o início da cadeia de caracteres (ou vírgula) e o endereço é considerado parte do DisplayName, incluindo comentários. Por exemplo:

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

Embora a MailAddress classe aceite um endereço de email como válido, outros servidores de email podem não aceitar o endereço de email.

A MailAddress classe não dá suporte aos seguintes formatos de endereço de email:

  • Nomes de exibição entre aspas e sem aspas. Por exemplo, display "name" <user@host>.

  • Grupos, conforme definido na Seção 3.4 do RFC 2822 publicada pelo IETF.

  • Os formatos de nome de usuário obsoletos de "user"."name"@hostou user."name"@host"user".name@host.

Construtores

MailAddress(String)

Inicializa uma nova instância da classe MailAddress usando o endereço especificado.

MailAddress(String, String)

Inicializa uma nova instância da classe MailAddress, usando o endereço e o nome de exibição especificados.

MailAddress(String, String, Encoding)

Inicializa uma nova instância da classe MailAddress usando o endereço especificado, o nome de exibição e a codificação.

Propriedades

Address

Obtém o endereço de email especificado quando essa instância foi criada.

DisplayName

Obtém o nome de exibição composto do nome de exibição e das informações de endereço especificadas quando essa instância foi criada.

Host

Obtém a parte de host do endereço especificado quando esta instância foi criada.

User

Obtém as informações do usuário do endereço especificado quando essa instância foi criada.

Métodos

Equals(Object)

Compara dois endereços de email.

GetHashCode()

Retorna um valor de hash para um endereço de email.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres dessa instância.

TryCreate(String, MailAddress)

Cria um novo MailAddress. Não gerará uma exceção se o objeto não puder ser criado.

TryCreate(String, String, Encoding, MailAddress)

Crie um novo MailAddress. Não gerará uma exceção se o objeto não puder ser criado.

TryCreate(String, String, MailAddress)

Crie um novo MailAddress. Não gerará uma exceção se o objeto não puder ser criado.

Aplica-se a