如今,隨著internet的迅速發展,許多企業都紛紛架構起自己的網站,用來開展企業的電子商務活動,如發布、管理企業自己的供求信息;發展和管理企業的會員等。除了這些以外,還有一點是十分重要的,就是向所有企業注冊會員發送電子郵件,及時通知用戶企業的最新消息。
microsoft公司推出visual studio.net已有一段時間了,一些以前使用asp開發web應用程序的網友,現在也慢慢地有asp轉向asp.net平臺。為了能夠幫助一些想使用asp.net開發郵件發送系統的網友順利完成這一功能,下面我們就一起來討論這個問題。
一、aspx運行環境
由于microsoft公司已發布的.net framework sdk的beta1和beta2兩個版本有很大的區別,所以本文是以beta2版本為例講解。
二、smtp協議簡介
smtp協議,是簡單郵件傳輸協議( simple mail transfer protocol)的簡稱。一般的發信軟件,如outlook express、foxmail等都是使用這個協議進行發送和中轉郵件的。
三、名稱空間(namespace)
介紹一下在本文的程序中要用到名稱空間(namespace)—system.web.mail(在.net framework sdk beta1版本中叫做system.web.util)類庫里所提供的郵件發送的對象、屬性和方法。
1、 對象(object)
system.web.mail名稱空間用來發送郵件的對象有smtpmail、mailmessage和mailattachment等三個對象,具體作用下文有說明。
2、 屬性(propertiy)
system.web.mail名稱空間的主要屬性,是mailmessage對象的屬性,下表列出了mailmessage對象屬性的名稱及其意義:
屬性名稱 代表意義
from 發信人地址(源地址)
to 接收人地址(目的地制)
subject 郵件標題
priority 郵件優先級(high,low,normal)
attachment 郵件附件
bcc 暗送地址
cc 抄送地址
body 郵件主體
bodyformat 郵件格式(html格式、text格式)
bodyencoding 編碼(base64,uuencode)
3、 方法(method)
send方法,郵件就是通過send方法發送出去的。該方法的調用有兩種方式:
1) smtpmail.send(“源地址”,”目標地址”,”主題”,”內容”)
2) smtpmail.send(mailmessage)
注:本文就是采用第二種調用方式。
四、程序源代碼(編程腳本語言為vb.net)
<%@ page language="vb" runat="server"%>
<script runat="server">
sub button1_click(sender as object, e as eventargs)
dim strfrom,strto,strbcc,strcc,title,conttext
strfrom =textbox1.text
strto =textbox2.text
strbcc =textbox3.text
strcc =textbox4.text
title =textbox5.text
conttext =textbox6.text
dim objmail as new mailmessage
dim smtp as new smtpmail
smtp.smtpserver="smtp.163.com" '定義服務器的名稱
select case objmail
.from= strfrom
.to= strto
.bcc= strbcc
.cc= strcc
.subject= title
.body= conttext
.bodyformat= mailformat.html
.priority= mailpriorty.high
end select
smtp.send(objmail)
end sub
</script>
<html>
<body>
<form runat="server">
<p>
接收人:<asp:textbox id="textbox1" runat="server">
</asp:textbox>
</p>
<p>
發送人:<asp:textbox id="textbox2" runat="server"></asp:textbox>
</p>
<p>
暗 送:<asp:textbox id="textbox3" runat="server"></asp:textbox>
</p>
<p>
抄 送:<asp:textbox id="textbox4" runat="server"></asp:textbox>
</p>
<p>
主 題:<asp:textbox id="textbox5" runat="server"></asp:textbox>
</p>
<p>
內 容:<asp:textbox id="textbox6" runat="server"></asp:textbox>
</p>
<p>
<asp:button id="button1" runat="server"
text="發送">
</asp:button>
</p>
</form>
</body>
</html>
五、總結
以前,microsoft公司沒有推出asp.net時,我們用asp做一個郵件發送系統感覺很復雜,是一件很難辦的事情,現在可好了,microsoft公司最近已推出.net framework sdk beta2 版本,利用system.web.mail名稱空間強大的類庫,使我們完成這項工作變得簡單起來。
新聞熱點
疑難解答
圖片精選