用Asp.Net 来发送E-mail
2002-09-19 09:24
519 查看
在这篇文章中,我们将演示如何编写asp.net来发送emails。这将要讨论到诸如email 格式,优先级别,附件和邮件加密。
Asp.net通过使用SmtpMail对象来发送邮件。SmtpMail对象发送邮件是通过以下几步来完成的。
# 导入与mail相关的名称空间。
# 建立一个message对象并设置属性。
# 通过SmtpMail对象实例的'Send'方法来发送邮件。
现在让我们一步步的来了解从asp.net页面发送邮件的过程。
一. 导入名称空间
在asp.net页面中导入System.Web.Util名称空间,这个名称空间包含了所有发送邮件所必须的对象。这些对象是:
<% @Import Namespace = "System.Web.Util" %>
二。初始化MailMessage 对象
使用以下语句可以实现初始化MailMessage对象。
Dim mailObj AS new MailMessage
MailMessage对象具有以下属性。
以下几行代码演示了如何使用MailMessage对象的属性的方法。他描述了我们将要创建的消息Message, 而这个消息(message)是用SmtpMail对象来发送的。在我们的这个例子中,mailObj就是MailMeessage对象的实例。
mailObj.From = "abc@mydomain.com"
mailObj.To = Request.Form ("to")
mailObj.Subject = "subject of the mail"
mailObj.Body = "Message of the mail"
三。发送邮件
最后通过SmtpMail对象的'send'方法来发送邮件。下面的代码就是用来发送邮件的。
SmtpMail.Send(mailObj)
最后我们把以上的这些应用到一个完整的例子当中来。
下面是用Asp.net+C#编写的。
<%@page language="C#" %>
<%@Import Namespace="System.Web.Util" %>
<HTML><BODY>
<SCRIPT LANGUAGE="C#" RUNAT="server">
// This method is called on the server when the submit
// button is clicked on the client and when the page
// posts back to itself
public void SendMail (Object Obj, EventArgs E)
{
MailMessage mailObj = new MailMessage();
// 设置email的'from'和'to'的地址
mailObj.From = Request.Form("From");
mailObj.To = Request.Form("To");
mailObj.Subject = "Subject Of the Mail";
mailObj.Body = "Body of the Mail";
// 可选: 使用html格式的Email
mailObj.BodyFormat = MailFormat.Html;
// 可选: 对邮件进行加密
mailObj.BodyEncoding = MailFormat.Base64;
// 可选: 设置邮件的优先级别为高
mailObj.Priority = MailPriority.High;
// 可选: 附件
// 注意这里我们创建了一个MailAttachment对象来附加一个文件到email。
mailObj.Attachments.Add(new MailAttachment("c://test.doc"));
// 使用SmtpMail对象来发送邮件。
SmtpMail.Send(mailObj);
}
</SCRIPT>
<asp:label ID="Headingmsg" Text="Enter Your Email Address:" RUNAT="server"/>
<FORM METHOD="post" RUNAT="server">
Email Recipient: <INPUT TYPE="text" NAME="to"> <br>
Email Sender: <INPUT TYPE="text" NAME="from">
<INPUT TYPE="submit" NAME="Submit" VALUE="Send Mail" RUNAT="server" OnServerClick="SendMail">
</FORM>
</BODY>
本人的翻译水平不高,有些地方自己懂,但是要翻译过来还真难,希望大家指正。括号中的英文是自己觉得翻译不准的地方。
Asp.net通过使用SmtpMail对象来发送邮件。SmtpMail对象发送邮件是通过以下几步来完成的。
# 导入与mail相关的名称空间。
# 建立一个message对象并设置属性。
# 通过SmtpMail对象实例的'Send'方法来发送邮件。
现在让我们一步步的来了解从asp.net页面发送邮件的过程。
一. 导入名称空间
在asp.net页面中导入System.Web.Util名称空间,这个名称空间包含了所有发送邮件所必须的对象。这些对象是:
对象 | 简介 |
SmtpMail | 声明邮件系统(mail system)来发送邮件。 |
MailMessage | 声明一个消息(message),包含发送地址,接收地址等属性。 |
MailFormat | 声明消息的格式-Html,Text 等等。 |
MailAttachment | 声明邮件的附件。 |
MailEncoding enum | 声明加密方式:Base64 or UUencode. |
MailPriority enum | 设置邮件的优先级别:值:高,底,一般 |
二。初始化MailMessage 对象
使用以下语句可以实现初始化MailMessage对象。
Dim mailObj AS new MailMessage
MailMessage对象具有以下属性。
属性 | 描述 |
From | 发送方的email地址 |
To | 接收方的email地址 |
Subject | Email的主题 |
Body | Email的内容 |
CC | List of recipients copied on the email |
BCC | List of recipients blind-copied on the email |
Priority | 邮件的优先级别 高,底,一般 |
BodyEncoding | 加密邮件的内容 Base64 或 UUencode |
BodyFormat | 内容的格式 Html 或文本 |
Attachments | 附件列表 |
mailObj.From = "abc@mydomain.com"
mailObj.To = Request.Form ("to")
mailObj.Subject = "subject of the mail"
mailObj.Body = "Message of the mail"
三。发送邮件
最后通过SmtpMail对象的'send'方法来发送邮件。下面的代码就是用来发送邮件的。
SmtpMail.Send(mailObj)
最后我们把以上的这些应用到一个完整的例子当中来。
下面是用Asp.net+C#编写的。
<%@page language="C#" %>
<%@Import Namespace="System.Web.Util" %>
<HTML><BODY>
<SCRIPT LANGUAGE="C#" RUNAT="server">
// This method is called on the server when the submit
// button is clicked on the client and when the page
// posts back to itself
public void SendMail (Object Obj, EventArgs E)
{
MailMessage mailObj = new MailMessage();
// 设置email的'from'和'to'的地址
mailObj.From = Request.Form("From");
mailObj.To = Request.Form("To");
mailObj.Subject = "Subject Of the Mail";
mailObj.Body = "Body of the Mail";
// 可选: 使用html格式的Email
mailObj.BodyFormat = MailFormat.Html;
// 可选: 对邮件进行加密
mailObj.BodyEncoding = MailFormat.Base64;
// 可选: 设置邮件的优先级别为高
mailObj.Priority = MailPriority.High;
// 可选: 附件
// 注意这里我们创建了一个MailAttachment对象来附加一个文件到email。
mailObj.Attachments.Add(new MailAttachment("c://test.doc"));
// 使用SmtpMail对象来发送邮件。
SmtpMail.Send(mailObj);
}
</SCRIPT>
<asp:label ID="Headingmsg" Text="Enter Your Email Address:" RUNAT="server"/>
<FORM METHOD="post" RUNAT="server">
Email Recipient: <INPUT TYPE="text" NAME="to"> <br>
Email Sender: <INPUT TYPE="text" NAME="from">
<INPUT TYPE="submit" NAME="Submit" VALUE="Send Mail" RUNAT="server" OnServerClick="SendMail">
</FORM>
</BODY>
本人的翻译水平不高,有些地方自己懂,但是要翻译过来还真难,希望大家指正。括号中的英文是自己觉得翻译不准的地方。
相关文章推荐
- ISA Server 的故障排除工具(2)
- C#对称加密与非对称加密实例
- 在ASP.NET 2.0中操作数据之十二:在GridView控件中使用TemplateField
- C语言使用openSSL库DES模块实现加密功能详解
- Java使用AES加密和解密的实例详解
- 使用Python进行AES加密和解密的示例代码
- ATL实现Connection Point的一种简单的方法
- 移植到 Windows 2000 和 COM+
- 提出一种密钥生成方案
- 一个投票程序
- 用ASP实现论坛的UBB功能
- JavaScript构造XML树结构
- 存储过程实现BBS树形结构
- dephi 程序输入法根据用户的爱好自动切换的简便解决办法
- dephi 程序输入法中英文自动切换实现的源代码
- 矛与盾的较量(2)——CRC原理篇
- ”红色警戒“肆虐台湾
- DataList控件也玩分页-转贴