MailAddress Kelas

Definisi

Mewakili alamat pengirim atau penerima surat elektronik.

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

Contoh

Contoh kode berikut menunjukkan pengiriman pesan email dengan menggunakan SmtpClientkelas , , MailAddressdan 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());
    }
}

Keterangan

Kelas MailAddress digunakan oleh SmtpClient kelas dan MailMessage untuk menyimpan informasi alamat untuk pesan email.

Alamat email terdiri dari nama pengguna, nama host, dan nama tampilan opsional. DisplayName dapat berisi karakter non-ASCII jika Anda mengodekannya.

Kelas MailAddress mendukung format alamat email berikut:

  • Format alamat sederhana dari user@host. DisplayName Jika tidak diatur, ini adalah format alamat email yang dihasilkan.

  • Format nama tampilan standar yang dikutip dari "display name" <user@host>. DisplayName Jika diatur, ini adalah format yang dihasilkan.

    • Jika belum disertakan, tanda kurung sudut ditambahkan di User sekitar nama dan Host nama. Misalnya, "display name" user@host diubah menjadi "display name" <user@host>.
    • Jika belum disertakan, tanda kutip ditambahkan di DisplayNamesekitar . Misalnya, display name <user@host> diubah menjadi "display name" <user@host>.
    • Karakter Unicode didukung di DisplayName properti .

Dalam dua format ini, elemen berikut diizinkan:

  • User Nama dengan tanda kutip. Contohnya, "user name"@host.
  • Harfiah domain yang dikurung. Contohnya, <user@[my domain]>.
  • Komentar. Contohnya, (comment)"display name"(comment)<(comment)user(comment)@(comment)domain(comment)>(comment). Komentar dihapus sebelum transmisi.
  • .NET 9 dan yang lebih lama SAJA: Titik berturut-turut dan berikutnya dalam nama pengguna. Contohnya, user...name..@host. (Mulai dari .NET 10, titik berturut-turut tidak diizinkan.)

Koma digunakan untuk memisahkan elemen dalam daftar alamat email. Akibatnya, koma tidak boleh digunakan dalam nama tampilan yang tidak dikutip dalam daftar. Alamat email berikut akan diizinkan:

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

Alamat email berikut ini tidak akan diizinkan:

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

Tanda kutip dapat disematkan dalam string yang dikutip, tetapi harus diloloskan. Alamat email berikut akan diizinkan:

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

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

Alamat email berikut ini tidak akan diizinkan:

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

Ketika nama pengguna tidak dikutip, semua teks antara awal string (atau koma) dan alamat dianggap sebagai bagian DisplayNamedari , termasuk komentar. Contohnya:

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

MailAddress Meskipun kelas menerima alamat email sebagai valid, server email lain mungkin tidak menerima alamat email.

Kelas MailAddress tidak mendukung format alamat email berikut:

  • Nama tampilan campuran yang dikutip dan tidak dikutip. Contohnya, display "name" <user@host>.
  • Grup, seperti yang didefinisikan dalam RFC 2822 Bagian 3.4 yang diterbitkan oleh IETF.
  • Format nama pengguna usang dari "user"."name"@host, user."name"@host atau "user".name@host.
  • hanya .NET 10 dan versi yang lebih baru: Titik berturut-turut dalam nama pengguna, misalnya, user...name@host.com.

Konstruktor

Nama Deskripsi
MailAddress(String, String, Encoding)

Menginisialisasi instans MailAddress baru kelas menggunakan alamat, nama tampilan, dan pengodean yang ditentukan.

MailAddress(String, String)

Menginisialisasi instans MailAddress baru kelas menggunakan alamat dan nama tampilan yang ditentukan.

MailAddress(String)

Menginisialisasi instans MailAddress baru kelas menggunakan alamat yang ditentukan.

Properti

Nama Deskripsi
Address

Mendapatkan alamat email yang ditentukan ketika instans ini dibuat.

DisplayName

Mendapatkan nama tampilan yang terdiri dari nama tampilan dan informasi alamat yang ditentukan saat instans ini dibuat.

Host

Mendapatkan bagian host dari alamat yang ditentukan ketika instans ini dibuat.

User

Mendapatkan informasi pengguna dari alamat yang ditentukan saat instans ini dibuat.

Metode

Nama Deskripsi
Equals(Object)

Membandingkan dua alamat email.

GetHashCode()

Mengembalikan nilai hash untuk alamat email.

GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
ToString()

Mengembalikan representasi string dari instans ini.

TryCreate(String, MailAddress)

Membuat baru MailAddress. Tidak melemparkan pengecualian jika objek tidak dapat dibuat.

TryCreate(String, String, Encoding, MailAddress)

Buat sebuah MailAddress baru. Tidak melemparkan pengecualian jika objek tidak dapat dibuat.

TryCreate(String, String, MailAddress)

Buat sebuah MailAddress baru. Tidak melemparkan pengecualian jika objek tidak dapat dibuat.

Berlaku untuk