Bagikan melalui


MailMessage Kelas

Definisi

Mewakili pesan email yang dapat dikirim menggunakan SmtpClient kelas .

public ref class MailMessage : IDisposable
public class MailMessage : IDisposable
type MailMessage = class
    interface IDisposable
Public Class MailMessage
Implements IDisposable
Warisan
MailMessage
Penerapan

Contoh

Contoh kode berikut menunjukkan pembuatan dan pengiriman pesan email yang menyertakan lampiran.

static void CreateMessageWithAttachment( String^ server )
{
   
   // Specify the file to be attached and sent.
   // This example assumes that a file named Data.xls exists in the
   // current working directory.
   String^ file = L"data.xls";
   
   // Create a message and set up the recipients.
   MailMessage^ message = gcnew MailMessage( L"jane@contoso.com",L"ben@contoso.com",L"Quarterly data report.",L"See the attached spreadsheet." );
   
   // Create  the file attachment for this email message.
   Attachment^ data = gcnew Attachment(file, MediaTypeNames::Application::Octet);
   
   // Add time stamp information for the file.
   ContentDisposition^ disposition = data->ContentDisposition;
   disposition->CreationDate = System::IO::File::GetCreationTime( file );
   disposition->ModificationDate = System::IO::File::GetLastWriteTime( file );
   disposition->ReadDate = System::IO::File::GetLastAccessTime( file );
   
   // Add the file attachment to this email message.
   message->Attachments->Add( data );
   
   //Send the message.
   SmtpClient^ client = gcnew SmtpClient( server );
   
   // Add credentials if the SMTP server requires them.
   client->Credentials = CredentialCache::DefaultNetworkCredentials;
   client->Send( message );
   
   // Display the values in the ContentDisposition for the attachment.
   ContentDisposition^ cd = data->ContentDisposition;
   Console::WriteLine( L"Content disposition" );
   Console::WriteLine( cd );
   Console::WriteLine( L"File {0}", cd->FileName );
   Console::WriteLine( L"Size {0}", cd->Size );
   Console::WriteLine( L"Creation {0}", cd->CreationDate );
   Console::WriteLine( L"Modification {0}", cd->ModificationDate );
   Console::WriteLine( L"Read {0}", cd->ReadDate );
   Console::WriteLine( L"Inline {0}", cd->Inline );
   Console::WriteLine( L"Parameters: {0}", cd->Parameters->Count );
   IEnumerator^ myEnum1 = cd->Parameters->GetEnumerator();
   while ( myEnum1->MoveNext() )
   {
      DictionaryEntry^ d = safe_cast<DictionaryEntry^>(myEnum1->Current);
      Console::WriteLine( L"{0} = {1}", d->Key, d->Value );
   }

   data->~Attachment();
   client->~SmtpClient();
}
public static void CreateMessageWithAttachment(string server)
{
    // Specify the file to be attached and sent.
    // This example assumes that a file named Data.xls exists in the
    // current working directory.
    string file = "data.xls";
    // Create a message and set up the recipients.
    MailMessage message = new MailMessage(
        "jane@contoso.com",
        "ben@contoso.com",
        "Quarterly data report.",
        "See the attached spreadsheet.");

    // Create  the file attachment for this email message.
    Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
    // Add time stamp information for the file.
    ContentDisposition disposition = data.ContentDisposition;
    disposition.CreationDate = System.IO.File.GetCreationTime(file);
    disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
    disposition.ReadDate = System.IO.File.GetLastAccessTime(file);
    // Add the file attachment to this email message.
    message.Attachments.Add(data);

    //Send the message.
    SmtpClient client = new SmtpClient(server);
    // Add credentials if the SMTP server requires them.
    client.Credentials = CredentialCache.DefaultNetworkCredentials;

    try
    {
        client.Send(message);
    }
    catch (Exception ex)
    {
        Console.WriteLine("Exception caught in CreateMessageWithAttachment(): {0}",
            ex.ToString());
    }
    // Display the values in the ContentDisposition for the attachment.
    ContentDisposition cd = data.ContentDisposition;
    Console.WriteLine("Content disposition");
    Console.WriteLine(cd.ToString());
    Console.WriteLine("File {0}", cd.FileName);
    Console.WriteLine("Size {0}", cd.Size);
    Console.WriteLine("Creation {0}", cd.CreationDate);
    Console.WriteLine("Modification {0}", cd.ModificationDate);
    Console.WriteLine("Read {0}", cd.ReadDate);
    Console.WriteLine("Inline {0}", cd.Inline);
    Console.WriteLine("Parameters: {0}", cd.Parameters.Count);
    foreach (DictionaryEntry d in cd.Parameters)
    {
        Console.WriteLine("{0} = {1}", d.Key, d.Value);
    }
    data.Dispose();
}
Public Shared Sub CreateMessageWithAttachment(ByVal server As String)
    ' Specify the file to be attached And sent.
    ' This example assumes that a file named Data.xls exists in the
    ' current working directory.
    Dim file As String = "data.xls"
    ' Create a message and set up the recipients.
    Dim message As MailMessage = New MailMessage(
        "jane@contoso.com",
        "ben@contoso.com",
        "Quarterly data report.",
        "See the attached spreadsheet.")

    ' Create  the file attachment for this email message.
    Dim data As Attachment = New Attachment(file, MediaTypeNames.Application.Octet)
    ' Add time stamp information for the file.
    Dim disposition As ContentDisposition = data.ContentDisposition
    disposition.CreationDate = System.IO.File.GetCreationTime(file)
    disposition.ModificationDate = System.IO.File.GetLastWriteTime(file)
    disposition.ReadDate = System.IO.File.GetLastAccessTime(file)
    ' Add the file attachment to this email message.
    message.Attachments.Add(data)

    ' Send the message
    Dim client As SmtpClient = New SmtpClient(server)
    ' Add credentials if the SMTP server requires them.
    client.Credentials = CredentialCache.DefaultNetworkCredentials

    Try
        client.Send(message)
    Catch ex As Exception
        Console.WriteLine("Exception caught in CreateMessageWithAttachment(): {0}", ex.ToString())
    End Try

    ' Display the values in the ContentDisposition for the attachment.
    Dim cd As ContentDisposition = data.ContentDisposition
    Console.WriteLine("Content disposition")
    Console.WriteLine(cd.ToString())
    Console.WriteLine("File {0}", cd.FileName)
    Console.WriteLine("Size {0}", cd.Size)
    Console.WriteLine("Creation {0}", cd.CreationDate)
    Console.WriteLine("Modification {0}", cd.ModificationDate)
    Console.WriteLine("Read {0}", cd.ReadDate)
    Console.WriteLine("Inline {0}", cd.Inline)
    Console.WriteLine("Parameters: {0}", cd.Parameters.Count)

    For Each d As DictionaryEntry In cd.Parameters
        Console.WriteLine("{0} = {1}", d.Key, d.Value)
    Next

    data.Dispose()
End Sub

Keterangan

Instans MailMessage kelas digunakan untuk membuat pesan email yang dikirimkan ke server SMTP untuk pengiriman menggunakan SmtpClient kelas .

Pengirim, penerima, subjek, dan isi pesan email dapat ditentukan sebagai parameter saat MailMessage digunakan untuk menginisialisasi MailMessage objek. Parameter ini juga dapat diatur atau diakses menggunakan properti pada MailMessage objek .

Header dan elemen pesan email utama untuk pesan dapat diatur menggunakan properti MailMessage kelas berikut.

Header atau bagian surat Properti
Lampiran Attachments
Salinan karbon buta (BCC) Bcc
Salinan karbon (CC) CC
Jenis-Konten BodyEncoding
Pengodean untuk header kustom HeadersEncoding
Isi pesan Body
Prioritas Priority
Penerima To
Reply-To ReplyToList
Pengirim From
Subjek Subject

Kelas ini MailMessage juga memungkinkan aplikasi untuk mengakses koleksi header untuk pesan menggunakan Headers properti . Meskipun koleksi ini baca-saja (koleksi baru tidak dapat diatur), header kustom dapat ditambahkan ke atau dihapus dari koleksi ini. Header kustom apa pun yang ditambahkan akan disertakan saat MailMessage instans dikirim. Sebelum pesan dikirim, hanya header yang secara khusus ditambahkan ke koleksi ini di Headers properti yang disertakan dalam koleksi. MailMessage Setelah instans dikirim, Headers properti juga akan menyertakan header yang diatur menggunakan properti terkait dari MailMessage kelas atau parameter yang MailMessage dilewatkan saat digunakan untuk menginisialisasi MailMessage objek.

Jika beberapa header email cacat, mereka dapat menyebabkan pesan email rusak. Jadi header email apa pun di koleksi header yang dapat diatur menggunakan properti pada MailMessage kelas hanya boleh diatur menggunakan MailMessage properti kelas atau sebagai parameter yang MailMessage diteruskan saat menginisialisasi MailMessage objek. Daftar header email berikut tidak boleh ditambahkan menggunakan Headers properti dan nilai apa pun yang ditetapkan untuk header ini menggunakan Headers properti akan dibuang atau ditimpa saat pesan dikirim:

  • Bcc

  • Cc

  • CONTENT-ID

  • Lokasi Konten

  • Pengodean Transfer Konten

  • Jenis-Konten

  • Tanggal

  • Dari

  • Pentingnya

  • MIME-Version

  • Prioritas

  • Reply-To

  • Pengirim

  • Untuk

  • Prioritas X

Jika aplikasi tidak menentukan header X-Sender menggunakan Headers properti , MailMessage kelas akan membuatnya saat pesan dikirim.

AlternateViews Gunakan properti untuk menentukan salinan pesan email dalam format yang berbeda. Misalnya, jika Anda mengirim pesan dalam HTML, Anda mungkin juga ingin memberikan versi teks biasa jika beberapa penerima menggunakan pembaca email yang tidak dapat menampilkan konten HTML. Untuk contoh yang menunjukkan pembuatan pesan dengan tampilan alternatif, lihat AlternateViews.

Attachments Gunakan properti untuk menambahkan lampiran ke pesan email. Untuk contoh yang menunjukkan pembuatan pesan dengan lampiran, lihat Attachments. Memanggil Buang pada MailMessage juga memanggil Buang pada setiap Lampiran yang dirujuk.

Setelah merakit pesan email, Anda dapat mengirimkannya dengan menggunakan Send metode atau SendAsync .

Konstruktor

MailMessage()

Menginisialisasi instans MailMessage kosong kelas.

MailMessage(MailAddress, MailAddress)

Menginisialisasi instans MailMessage baru kelas dengan menggunakan objek kelas yang ditentukan MailAddress .

MailMessage(String, String)

Menginisialisasi instans MailMessage baru kelas dengan menggunakan objek kelas yang ditentukan String .

MailMessage(String, String, String, String)

Menginisialisasi instans baru kelas MailMessage.

Properti

AlternateViews

Mendapatkan koleksi lampiran yang digunakan untuk menyimpan bentuk alternatif isi pesan.

Attachments

Mendapatkan kumpulan lampiran yang digunakan untuk menyimpan data yang dilampirkan ke pesan email ini.

Bcc

Mendapatkan koleksi alamat yang berisi penerima blind carbon copy (BCC) untuk pesan email ini.

Body

Mendapatkan atau mengatur isi pesan.

BodyEncoding

Mendapatkan atau mengatur pengodean yang digunakan untuk mengodekan isi pesan.

BodyTransferEncoding

Mendapatkan atau mengatur pengodean transfer yang digunakan untuk mengodekan isi pesan.

CC

Mendapatkan koleksi alamat yang berisi penerima salinan karbon (CC) untuk pesan email ini.

DeliveryNotificationOptions

Mendapatkan atau mengatur pemberitahuan pengiriman untuk pesan email ini.

From

Mendapatkan atau mengatur alamat dari untuk pesan email ini.

Headers

Mendapatkan header email yang dikirimkan dengan pesan email ini.

HeadersEncoding

Mendapatkan atau mengatur pengodean yang digunakan untuk header kustom yang ditentukan pengguna untuk pesan email ini.

IsBodyHtml

Mendapatkan atau menetapkan nilai yang menunjukkan apakah isi pesan email berada dalam HTML.

Priority

Mendapatkan atau mengatur prioritas pesan email ini.

ReplyTo
Kedaluwarsa.
Kedaluwarsa.
Kedaluwarsa.

Mendapatkan atau mengatur alamat ReplyTo untuk pesan email.

ReplyToList

Mendapatkan daftar alamat yang akan di balas untuk pesan surat.

Sender

Mendapatkan atau mengatur alamat pengirim untuk pesan email ini.

Subject

Mendapatkan atau mengatur baris subjek untuk pesan email ini.

SubjectEncoding

Mendapatkan atau mengatur pengodean yang digunakan untuk konten subjek untuk pesan email ini.

To

Mendapatkan kumpulan alamat yang berisi penerima pesan email ini.

Metode

Dispose()

Merilis semua sumber daya yang MailMessagedigunakan oleh .

Dispose(Boolean)

Merilis sumber daya tidak terkelola yang digunakan oleh MailMessage dan secara opsional merilis sumber daya terkelola.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk