ASP.NET 2.0中发送电子邮件剖析之一

来源:天极开发 作者: 2007-11-29 出处:pcdog.com

.net  ssl  web服务器  垃圾邮件  协议  
上一页 1 2 
四、通过回馈Web页面发送管理员电子邮件

  为了说明使用MailMessage和SmtpClient类来实现发送一个电子邮件,我已经创建了一个简单的回馈页面示例。在这个页面中,用户被提示输入其电子邮件地址,他们的回馈主题和相应的回馈内容。

<table border="0">
<tr>
<td>
<b>Your Email:</b>
</td>
<td>
<asp:TextBox runat="server" ID="UsersEmail" Columns="30"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<b>Subject:</b>
</td>
<td>
<asp:TextBox runat="server" ID="Subject" Columns="30">
</asp:TextBox>
</td>
</tr>
<tr>
<td colspan="2">
<b>Body:</b> <br />
<asp:TextBox runat="server" ID="Body" TextMode="MultiLine" Columns="55" Rows="10">
</asp:TextBox>
</td>
</tr>
<tr>
<td colspan="2" align="center">
<asp:Button runat="server" ID="SendEmail" Text="Send Feedback" />
</td>
</tr>
</table>

ASP.NET 2.0中发送电子邮件剖析之一(图一)

  一旦用户提供了回馈消息并且点击了"Send Feedback"按钮,即发生一个回寄并且该按钮的Click事件激发。在该事件处理器内,一个MailMessage对象被创建,并且它的To,From,Subject和Body属性都根据用户提供的消息加以设置。在创建MailMessage对象并且填充它的属性后,该电子邮件被通过SmtpClient类的Send方法发送出去。

Protected Sub SendEmail_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles SendEmail.Click
 '!!!把这个值更新为你的电子邮件地址
 Const ToAddress As String = "you@youremail.com"
 '(1)创建MailMessage实例
 Dim mm As New MailMessage(UsersEmail.Text, ToAddress)
 '(2)属性MailMessage赋值
 mm.Subject = Subject.Text
 mm.Body = Body.Text
 mm.IsBodyHtml = False
 '(3)创建SmtpClient对象
 Dim smtp As New SmtpClient
 '(4)发送MailMessage(将使用Web.config设置)
 smtp.Send(mm)
End Sub

  在这里的代码中,我们不需要设置SmtpClient类的任何属性,因为它们已经在Web.config文件中指定了(请参考本文下载源码)。

ASP.NET 2.0中发送电子邮件剖析之一(图二)

  五、结论

  通过进一步结合来自于ASP.NET 1.x的其它改进功能,ASP.NET 2.0中的电子邮件发送能力被进一步更新并且移动到一个新的命名空间-System.Net.Mail。在ASP.NET 2.0中,中继服务器设置能够容易地脱离ASP.NET代码,而移动到Web.config文件中,正如我们在这个示例所看到的。而且,还有对中继服务器认证更好的支持。在下篇文章中,我们将探讨更高级电子邮件使用情况,例如构造HTML格式的电子邮件,发送附件,把对象嵌入到电子邮件内,处理与SMTP/中继服务器相关的异常,等等。
更多内容请看PCdog.com--ASP.NET应用篇  垃圾邮件专题
上一页 1 2 
上一篇:ASP.NET服务器端异步Web方法
下一篇:ASP.NET 2.0发送电子邮件全面剖析之二