Bagikan melalui


SmtpClient.Send Metode

Definisi

Mengirim pesan email ke server SMTP untuk pengiriman. Metode ini memblokir saat pesan sedang dikirimkan.

Overload

Send(MailMessage)

Mengirim pesan yang ditentukan ke server SMTP untuk pengiriman.

Send(String, String, String, String)

Mengirim pesan email yang ditentukan ke server SMTP untuk pengiriman. Pengirim pesan, penerima, subjek, dan isi pesan ditentukan menggunakan String objek.

Send(MailMessage)

Sumber:
SmtpClient.cs
Sumber:
SmtpClient.cs
Sumber:
SmtpClient.cs

Mengirim pesan yang ditentukan ke server SMTP untuk pengiriman.

public:
 void Send(System::Net::Mail::MailMessage ^ message);
public void Send (System.Net.Mail.MailMessage message);
member this.Send : System.Net.Mail.MailMessage -> unit
Public Sub Send (message As MailMessage)

Parameter

message
MailMessage

Yang MailMessage berisi pesan yang akan dikirim.

Pengecualian

messageadalah null.

Ini SmtpClient memiliki operasi pengiriman lain yang sudah berlangsung.

-atau-

Fromadalah null.

-atau-

Tidak ada penerima yang ditentukan dalam Toproperti , , CCdan Bcc .

-atau-

DeliveryMethod properti diatur ke Network dan Host adalah null.

-atau-

DeliveryMethod properti diatur ke Network dan Host sama dengan string kosong ("").

-atau-

DeliveryMethod properti diatur ke Network dan Port adalah nol, angka negatif, atau lebih besar dari 65.535.

Obyek ini telah dibuang.

Koneksi ke server SMTP gagal.

-atau-

Autentikasi gagal.

-atau-

Waktu operasi habis.

-atau-

EnableSsl diatur ke true tetapi DeliveryMethod properti diatur ke SpecifiedPickupDirectory atau PickupDirectoryFromIis.

-atau-

EnableSsl diatur ke true, tetapi server email SMTP tidak mengiklankan STARTTLS sebagai respons terhadap perintah EHLO.

message tidak dapat dikirimkan ke salah satu penerima di To, , CCatau Bcc.

message tidak dapat dikirimkan ke dua atau lebih penerima di To, , CCatau Bcc.

Contoh

Contoh kode berikut menunjukkan menggunakan metode ini.

static void CreateTestMessage2( String^ server )
{
   String^ to = L"jane@contoso.com";
   String^ from = L"ben@contoso.com";
   MailMessage^ message = gcnew MailMessage( from,to );
   message->Subject = L"Using the new SMTP client.";
   message->Body = L"Using this new feature, you can send an email message from an application very easily.";
   SmtpClient^ client = gcnew SmtpClient( server );
   
   // Credentials are necessary if the server requires the client 
   // to authenticate before it will send email on the client's behalf.
   client->UseDefaultCredentials = true;
   client->Send( message );
   client->~SmtpClient();
}
public static void CreateTestMessage2(string server)
{
    string to = "jane@contoso.com";
    string from = "ben@contoso.com";
    MailMessage message = new MailMessage(from, to);
    message.Subject = "Using the new SMTP client.";
    message.Body = @"Using this new feature, you can send an email message from an application very easily.";
    SmtpClient client = new SmtpClient(server);
    // Credentials are necessary if the server requires the client
    // to authenticate before it will send email on the client's behalf.
    client.UseDefaultCredentials = true;

    try
    {
        client.Send(message);
    }
    catch (Exception ex)
    {
        Console.WriteLine("Exception caught in CreateTestMessage2(): {0}",
            ex.ToString());
    }
}

Keterangan

Metode ini memblokir saat email dikirimkan. Anda dapat menentukan nilai waktu habis menggunakan Timeout properti untuk memastikan bahwa metode kembali setelah jumlah waktu yang ditentukan berlalu.

Sebelum memanggil metode ini, Host properti dan Port harus diatur baik melalui file konfigurasi dengan mengatur properti yang relevan, atau dengan meneruskan informasi ini ke SmtpClient(String, Int32) konstruktor.

Anda tidak dapat memanggil metode ini jika ada pesan yang dikirim secara asinkron.

Jika host SMTP memerlukan kredensial, Anda harus mengaturnya sebelum memanggil metode ini. Untuk menentukan kredensial, gunakan UseDefaultCredentials properti atau Credentials .

Jika Anda menerima SmtpException pengecualian, periksa StatusCode properti untuk menemukan alasan operasi gagal. juga SmtpException dapat berisi pengecualian dalam yang menunjukkan alasan operasi gagal.

Saat mengirim email menggunakan Send ke beberapa penerima dan server SMTP menerima beberapa penerima sebagai valid dan menolak orang lain, Send mengirim email ke penerima yang SmtpFailedRecipientsException diterima dan kemudian dilemparkan (atau SmtpFailedRecipientException jika hanya satu penerima yang ditolak). SmtpFailedRecipientsException berisi daftar penerima yang ditolak.

Catatan

EnableSsl Jika properti diatur ke true, dan server email SMTP tidak mengiklankan STARTTLS sebagai respons terhadap perintah EHLO, maka panggilan ke Send metode atau SendAsync akan melempar SmtpException.

Berlaku untuk

Send(String, String, String, String)

Sumber:
SmtpClient.cs
Sumber:
SmtpClient.cs
Sumber:
SmtpClient.cs

Mengirim pesan email yang ditentukan ke server SMTP untuk pengiriman. Pengirim pesan, penerima, subjek, dan isi pesan ditentukan menggunakan String objek.

public:
 void Send(System::String ^ from, System::String ^ recipients, System::String ^ subject, System::String ^ body);
public void Send (string from, string recipients, string? subject, string? body);
public void Send (string from, string recipients, string subject, string body);
member this.Send : string * string * string * string -> unit
Public Sub Send (from As String, recipients As String, subject As String, body As String)

Parameter

from
String

yang String berisi informasi alamat pengirim pesan.

recipients
String

String yang berisi alamat tempat pesan dikirim.

subject
String

String yang berisi baris subjek untuk pesan.

body
String

yang String berisi isi pesan.

Pengecualian

fromadalah null.

-atau-

recipientsadalah null.

fromadalah Empty.

-atau-

recipientsadalah Empty.

Ini SmtpClient memiliki operasi pengiriman lain yang sudah berlangsung.

-atau-

DeliveryMethod properti diatur ke Network dan Host adalah null.

-atau-

DeliveryMethod properti diatur ke Network dan Host sama dengan string kosong ("").

-atau-

DeliveryMethod properti diatur ke Network dan Port adalah nol, angka negatif, atau lebih besar dari 65.535.

Obyek ini telah dibuang.

Koneksi ke server SMTP gagal.

-atau-

Autentikasi gagal.

-atau-

Waktu operasi habis.

-atau-

EnableSsl diatur ke true tetapi DeliveryMethod properti diatur ke SpecifiedPickupDirectory atau PickupDirectoryFromIis.

-atau-

EnableSsl diatur ke true, tetapi server email SMTP tidak mengiklankan STARTTLS sebagai respons terhadap perintah EHLO.

message tidak dapat dikirimkan ke salah satu penerima di To, , CCatau Bcc.

message tidak dapat dikirimkan ke dua atau lebih penerima di To, , CCatau Bcc.

Keterangan

Metode ini memblokir saat email dikirimkan. Anda dapat menentukan nilai waktu habis menggunakan Timeout properti untuk memastikan bahwa metode kembali setelah jumlah waktu yang ditentukan berlalu.

Sebelum memanggil metode ini, Host properti dan Port harus diatur baik melalui file konfigurasi dengan mengatur properti yang relevan, atau dengan meneruskan informasi ini ke SmtpClient(String, Int32) konstruktor.

Anda tidak dapat memanggil metode ini jika ada pesan yang dikirim secara asinkron.

Jika host SMTP memerlukan kredensial, Anda harus mengaturnya sebelum memanggil metode ini. Untuk menentukan kredensial, gunakan UseDefaultCredentials properti atau Credentials .

Jika Anda menerima SmtpException pengecualian, periksa StatusCode properti untuk menemukan alasan operasi gagal. juga SmtpException dapat berisi pengecualian dalam yang menunjukkan alasan operasi gagal.

Saat mengirim email menggunakan Send ke beberapa penerima dan server SMTP menerima beberapa penerima sebagai valid dan menolak orang lain, Send mengirim email ke penerima yang SmtpFailedRecipientsException diterima dan kemudian dilemparkan (atau SmtpFailedRecipientException jika hanya satu penerima yang ditolak). SmtpFailedRecipientsException berisi daftar penerima yang ditolak.

Catatan

EnableSsl Jika properti diatur ke true, dan server email SMTP tidak mengiklankan STARTTLS sebagai respons terhadap perintah EHLO, maka panggilan ke Send metode atau SendAsync akan melempar SmtpException.

Berlaku untuk