MailAddress Clase

Definición

Representa la dirección de un remitente o destinatario de correo electrónico.

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

Ejemplos

En el ejemplo de código siguiente se muestra cómo enviar un mensaje de correo electrónico mediante las SmtpClientclases , MailAddressy MailMessage .

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

Comentarios

Las MailAddress clases y MailMessage usan la SmtpClient clase para almacenar la información de direcciones de los mensajes de correo electrónico.

Una dirección de correo se compone de un nombre de usuario, un nombre de host y un nombre para mostrar opcional. DisplayName puede contener caracteres no ASCII si los codifica.

La MailAddress clase admite los siguientes formatos de dirección de correo:

  • Formato de dirección simple de user@host. Si no se establece , DisplayName se trata del formato de dirección de correo que se genera.

  • Formato de nombre para mostrar entre comillas estándar de "display name" <user@host>. Si se establece , DisplayName este es el formato que se genera.

    • Si aún no están incluidos, los corchetes angulares se agregan alrededor del nombre y Host el User nombre. Por ejemplo, "display name" user@host se cambia a "display name" <user@host>.
    • Si aún no están incluidos, las comillas se agregan alrededor de DisplayName. Por ejemplo, display name <user@host> se cambia a "display name" <user@host>.
    • Los caracteres Unicode se admiten en la DisplayName propiedad .

Dentro de estos dos formatos, se permiten los siguientes elementos:

  • Un User nombre con comillas. Por ejemplo: "user name"@host.
  • Literales de dominio entre corchetes. Por ejemplo: <user@[my domain]>.
  • Comentarios. Por ejemplo: (comment)"display name"(comment)<(comment)user(comment)@(comment)domain(comment)>(comment). Los comentarios se quitan antes de la transmisión.
  • .NET solo 9 y versiones anteriores: puntos consecutivos y finales en los nombres de usuario. Por ejemplo: user...name..@host. (A partir de .NET 10, no se permiten puntos consecutivos).

Una coma se usa para separar los elementos de una lista de direcciones de correo. Como resultado, una coma no debe usarse en nombres para mostrar sin comprimido en una lista. Se permitirían las siguientes direcciones de correo:

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

No se permite la siguiente dirección de correo:

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

Las comillas se pueden incrustar en una cadena entre comillas, pero deben ser de escape. Se permitirían las siguientes direcciones de correo:

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

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

No se permite la siguiente dirección de correo:

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

Cuando el nombre de usuario no está entre comillas, todo el texto entre el inicio de la cadena (o coma) y la dirección se considera parte de DisplayName, incluidos los comentarios. Por ejemplo:

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

Aunque la MailAddress clase acepta una dirección de correo como válida, es posible que otros servidores de correo no acepten la dirección de correo.

La MailAddress clase no admite los siguientes formatos de dirección de correo:

  • Nombres para mostrar entre comillas y sin comillas mixtas. Por ejemplo: display "name" <user@host>.
  • Grupos, tal como se define en la sección 3.4 de RFC 2822 publicada por el IETF.
  • Formatos de nombre de usuario obsoletos de "user"."name"@hosto user."name"@host"user".name@host.
  • .NET solo 10 y versiones posteriores: puntos consecutivos en el nombre de usuario, por ejemplo, user...name@host.com.

Constructores

Nombre Description
MailAddress(String, String, Encoding)

Inicializa una nueva instancia de la MailAddress clase utilizando la dirección, el nombre para mostrar y la codificación especificados.

MailAddress(String, String)

Inicializa una nueva instancia de la MailAddress clase utilizando la dirección y el nombre para mostrar especificados.

MailAddress(String)

Inicializa una nueva instancia de la MailAddress clase utilizando la dirección especificada.

Propiedades

Nombre Description
Address

Obtiene la dirección de correo electrónico especificada cuando se creó esta instancia.

DisplayName

Obtiene el nombre para mostrar compuesto por el nombre para mostrar y la información de dirección especificados cuando se creó esta instancia.

Host

Obtiene la parte del host de la dirección especificada cuando se creó esta instancia.

User

Obtiene la información de usuario de la dirección especificada cuando se creó esta instancia.

Métodos

Nombre Description
Equals(Object)

Compara dos direcciones de correo.

GetHashCode()

Devuelve un valor hash para una dirección de correo.

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
ToString()

Devuelve una representación de cadena de esta instancia.

Se aplica a