Dalam versi ASP.NET 2.0 yang baru dirilis, Microsoft tidak lagi merekomendasikan penggunaan namespace System.Web.Mail dan menggantinya dengan namespace System.Net.Mail yang baru. Ada banyak fitur baru yang diperkenalkan di perpustakaan baru ini, tetapi ada beberapa bug kecil dalam cara pengiriman email.
1. Mengirim Email
Sebelum membahas kesalahan kecil ini secara mendetail, mari kita lihat contoh kodenya (kami berasumsi bahwa Anda telah menambahkan "using System.Net.Mail" di awal file):
MailMessage msg = new MailMessage();
msg.From = new MailAddress(" [email protected] ", "Nama Orang");
msg.To.Add(new MailAddress(" [email protected] ", "Nama Penerima");
msg.To.Add(new MailAddress(" [email protected] ", "Nama Penerima 2");
msg.Subjek = "Subjek Pesan";
msg.Body = "Isi isi surat";
pesan.IsBodyHtml = benar;
pesan.Prioritas = MailPriority.Tinggi;
SmtpClient c = new SmtpClient("mailserver.domain.com");
c.Send(msg);
Kode di atas tidak jauh berbeda dengan implementasi pada versi sebelumnya, kecuali beberapa perubahan kecil dalam menentukan pesan. Daripada membuat alamat sendiri, Anda dapat membiarkan sistem melakukannya untuk Anda. Jika Anda menentukan alamat email dan nama, pesan berikut akan otomatis ditampilkan:
"Nama Orang" < [email protected] >
Ini adalah format yang "benar" untuk alamat email. Tentu saja, Anda selanjutnya dapat menambahkan beberapa alamat ke kumpulan Kepada, CC, dan BCC dengan cara yang persis sama seperti di atas. Mengirim pesan dalam jumlah besar secara terprogram dengan cara ini jauh lebih mudah daripada mengirim setiap pesan satu per satu - cukup tambahkan beberapa alamat ke atribut BCC untuk mencapai pengiriman massal.
2. Permasalahan yang ada
Sekarang mari kita analisa kesalahan-kesalahan kecil yang ada.
Seperti disebutkan sebelumnya, namespace baru ini hadir dengan beberapa bug kecil. Yang pertama adalah ketika Anda mengirim email, informasi header ditambahkan seluruhnya dalam huruf kecil. Namun, spesifikasi RFC untuk email SMTP tidak menentukan bagaimana header email harus menggunakan huruf besar; namun, banyak program pemfilteran spam membatasi pesan email yang headernya tidak menggunakan huruf besar.
Kesalahan lainnya berkaitan dengan pengaturan prioritas - dengan pengaturan prioritas, pengguna dapat menentukan pentingnya pesan di klien email. Karena cara header email diformat (dikonversi ke huruf kecil semua), program email saya (Eudora) tidak mengenali tanda prioritas yang sesuai dan oleh karena itu tidak secara khusus menandai email ini sebagai penting. Meskipun ini mungkin tampak sepele, tampaknya tidak ada alasan yang jelas untuk beralih ke System.Web.Mail versi baru.
Oleh karena itu, saya akan terus mengeksplorasi masalah ini. Jika saya benar-benar tidak dapat menemukan solusi yang baik, maka saya akan kembali ke System.Web.Mail sebelumnya untuk menyelesaikan masalah peringatan di atas dengan lebih efektif.