Saya baru saja melihat artikel tentang mengirim email di .NET "Mengirim email dari halaman asp.net" dan saya melihat bahwa kelas di bawah namespace System.Web.Mail masih digunakan. Kita semua tahu bahwa di bawah .NET 1.1, sebagian besar kelas di namespace ini digunakan untuk mengirim email. Menggunakan metode Kirim statis SmtpMail dapat dengan mudah mengirim email, tetapi karena kelas ini memanggil operasi pada Windows 2000 dan yang lebih baru, komponen CDO dari sistem digunakan untuk mengirim email. Apa pun kesalahannya, ini akan menanyakan bahwa objek CDO.Message tidak dapat diakses atau pengecualian CDO.Message lainnya. Terutama ketika kita memerlukan verifikasi Smtp, kita harus menambahkan tiga definisi header email ke MailMessage, yang relatif merepotkan. Nah, di bawah .NET 2.0, fungsi pengiriman email telah dirancang dengan sangat baik. Menggunakan kelas di ruang System.Net.Mail memungkinkan kita mengirim berbagai email dengan sangat sederhana. Namun, agar kompatibel dengan versi aslinya, ruang System.Web.Mail belum dihapus, dan kelas-kelas di ruang ini juga telah ditandai dengan Usang. Jika Anda menggunakan kelas .NET 2.0 untuk mengkompilasi, Anda akan menjadi diminta untuk menggunakan kelas ruang System.Web.Mail.
Sekarang mari kita lihat apa yang perlu dilakukan untuk mengirim email. Di sini saya juga menemukan artikel di taman tentang .NET 2.0 mengirim email, "Komponen pengiriman email berdasarkan .NET 2.0 System.Net.Mail namespace". mengirim dan menerima surat. Pada artikel kali ini kita hanya membahas cara mengirimkannya saja, saya rasa tidak terlalu menggunakan file konfigurasi. Kita juga perlu menentukan sendiri beberapa informasi akun Stmp untuk SmtpClient. Faktanya, kita hanya perlu mengkonfigurasi akun Smtp yang akan kita gunakan melalui web.config (atau app.config):
<configuration>
<system.net>
<mailSettings>
< smtp dari =" [email protected] ">
<network host="smtp.tom.com" password=" " port="25" userName="hjf1223" defaultCredentials="false"/>
</smtp>
</mailSettings >
< /system.net>
</configuration>
Sistem konfigurasi .NET 2.0 sangat kuat sehingga kita dapat menulis konfigurasi di atas dengan sangat sederhana tanpa mengacu pada informasi apa pun. Seperti di atas, atribut from adalah kotak surat tempat Anda akan mengirim email, dan host adalah alamat server SMTP. Tentu saja, kata sandi, port, dan nama pengguna perlu diperhatikan ketika kita tidak memerlukan server SMTP untuk memverifikasi pengguna pengirim, Setel ke salah, jika tidak, setel ke benar. Sebagian besar server SMTP saat ini memerlukan otentikasi pengguna, jadi secara umum setel ke benar dan biarkan menggunakan nama pengguna dan kata sandi kami mengonfigurasi untuk memverifikasi apakah itu adalah pengguna yang sah.
Setelah file konfigurasi ditulis, langkah selanjutnya adalah bagaimana memanggil program tersebut. Setelah saya menulis berikut ini untuk mengirim email, Anda akan merasa sangat aneh. Ya, sesederhana itu, mari kita lihat:
MailMessage m_message = new MailMessage();
m_message.From =MailAddress(" [email protected] ");
"));
m_message.Subject = "Kirim email menggunakan .NET 2.0";
m_message.Body = "Sangat sederhana";
SmtpClient m_smtpClient = new SmtpClient();
m_smtpClient.Send(m_message);
Kami bahkan tidak memiliki satu pun tambahan baris kode, yaitu Buat objek MailMessage, lalu buat SmtpClient dan gunakan untuk mengirim email secara langsung. Dibandingkan dengan metode statis asli, tidak ada lagi kode. Mungkin ada teman-teman di sini yang ingin bertanya? Dari mana informasi akun SMTP berasal? Faktanya, Anda dapat men-debugnya. Saat ini, atribut di objek m_smtpClient adalah nilai yang dikonfigurasi di file konfigurasi kami sebelumnya. Saat mengkonfigurasi ulang SmtpClient, nilai di bagian konfigurasi system.net akan dibaca secara otomatis. Jika pengguna telah mengkonfigurasi informasi smtp, maka secara otomatis akan ditransfer ke objek SmtpClient saat ini, dan kemudian digunakan untuk mengirim email. Mengirim email di .NET 2.0 sangat merepotkan, dan sangat stabil.
Ringkasan: Meskipun di bawah .NET 2.0, sangat mudah menggunakan System.Web.Mail untuk mengirim email, dan Anda bisa mendapatkan informasi pengecualian yang lebih rinci ketika terjadi kesalahan, namun terkadang masalah bisa membuat Anda bingung. Hal paling umum yang terjadi adalah ketika mesin Anda memasang firewall anti-virus, Anda mungkin tidak dapat mengirim email, tetapi pesan prompt menghalangi Anda untuk mendiagnosis masalah. Efek utamanya adalah email ditolak. Situasi ini terjadi karena firewall menolak penggunaan port 25, sehingga mengakibatkan ketidakmampuan untuk berkomunikasi secara normal dengan server SMTP. Solusinya adalah menutupnya. Saya yakin ada banyak kasus di Internet. Hal lain yang perlu mendapat perhatian khusus adalah bahwa mesin untuk mengirim email harus terhubung langsung ke jaringan eksternal karena perusahaan mengakses Internet melalui proxy, hal ini sangat mengesankan. Ada satu hal lagi yang perlu diperhatikan pada kode di atas, nilai From pada objek MailMessage harus sama dengan nilai From pada file konfigurasi.
Oke, ini kodenya, semoga dapat bermanfaat bagi anda http://hjf1223.cnblogs.com/archive/2006/07/06/444716.html