|
如今,電子郵件已經成為一種無所不在、異步通知和分布式的消息系統(tǒng)。存在許多web開發(fā)場所;其中,服務器端代碼都需要生成一個電子郵件并且把它發(fā)送給指定的接收者。該電子郵件可以被發(fā)送給網點中的一些用戶,通知他們有關于他們的新建用戶帳戶,提醒他們忘記的口令,或以郵件形式提交給他們一個清單。當然,這也可以是針對web開發(fā)者或站點管理員,提供給他們有關一個剛剛公開的未處理的異?;蛴脩艋仞伒南?。
幸好,ASP.NET使得發(fā)送電子郵件非常輕松。.NET框架版本1.x在System.Web.Mail類中包括了許多類,它們允許以編程方式通過短短的幾行代碼來發(fā)送一個電子郵件。盡管這個命名空間和這些類仍然存在于.NET框架2.0版本中,但是它們已經過時,你可以在 System.Net.Mail命名空間中找到新的與郵件支持相關的類。 在本文中,讓我們來一起探討System.Net.Mail 命名空間中的相關類,并且分析如何從一個ASP.NET2.0頁面的code-behind類中發(fā)送一個電子郵件。我們還要在Web.config中指定中繼服務器消息以及如何把這個消息應用于一些內置ASP.NET服務器控件中以便實現(xiàn)發(fā)送電子郵件(例如當一個用戶創(chuàng)建一個帳戶或需要一個口令提示器/重置器時)。 1.探討System.Net.Mail命名空間中的類 在System.Net.Mail命名空間中共有16個不同的類,它們都與把電子郵件發(fā)送到一個指定的簡單的郵件傳輸協(xié)議(SMTP)服務器以便進一步提交有關。在這個命名空間中有兩個核心類是: ·MailMessage:描述一個電子郵件消息;它擁有From,To,Subject,Body等屬性; ·SmtpClient:把一個指定的MailMessage實例發(fā)送到一個指定的SMTP服務器。 典型地,當你從一個ASP.NET 2.0頁面中發(fā)送電子郵件時,你要: (1)創(chuàng)建一個MailMessage對象; (2)賦給它屬性; (3)創(chuàng)建一個SmtpClient類實例; (4)指定關于使用該SMTP服務器的細節(jié)(如果它們沒有在Web.config中指定); (5)經由SmtpClient對象的Send方法發(fā)送該MailMessage。 其中,上面的第1步和第2步可以被略過,因為SmtpClient類的Send方法能夠接收一個MailMessage對象或接收四個字符串(分別描述電子郵件消息內容的from,to,subject和body部分)。 System.Net.Mail命名空間中的其它類還提供了更高級的電子郵件功能。例如,這些類能夠用于在一個電子郵件消息中添加附件,把對象嵌入到一個電子郵件,指定SMTP服務器認證消息等;還有一些Exception的派生類用 |
|
|
來自: 悟靜 > 《.net和asp.net》