用Asp.Net 来发送E-mail

原创 2002年09月19日 09:24:00
      在这篇文章中,我们将演示如何编写asp.net来发送emails。这将要讨论到诸如email 格式,优先级别,附件和邮件加密。
      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 设置邮件的优先级别:值:高,底,一般

<% @Import Namespace = "System.Web.Util" %>

二。初始化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 附件列表


以下几行代码演示了如何使用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构建完整E-mail发送系统

用ASP.NET构建完整E-mail发送系统 如果要你用ASP来做一个E-mail发送系统,你首先想到的一定是借助第三方开发的组件,但这样做会耗费你很多的银子。当然你也可以用Windows的...
  • u014739759
  • u014739759
  • 2014年04月23日 11:15
  • 1275

从Java应用程序中发送E-mail

Java作为一种网络编程语言具有强大的网络编程功能可以用仅仅几条语句完成其他语言需要的几十条甚至上百条语句所能完成的功能这里我试着用Java编写了一个可以用来发送Email的程序很简单仅仅作为示例 ...
  • zl348234192
  • zl348234192
  • 2014年05月26日 16:40
  • 286

C#中使用MAPI发送E-Mail

以下是从DevExpress代码中摘出来的,修改前先贴出来共享一下,有更好的建议请留言   直接构造该类,会把传入参数作为默认值来调用Outlook的发送窗体,对于要求直接发送的,此类不适用   ...
  • u014549630
  • u014549630
  • 2014年04月09日 15:55
  • 433

详解Asp.Net定时发送邮件方法

用.net发送邮件,总结起来有以下那么三种: (1)做一个winform 来定时发邮件。然后通过windows计划任务,设置为指定时间,每次自动运行,运行完毕后自动关闭。 (2)用sqlserve...
  • kirawoo
  • kirawoo
  • 2015年06月26日 13:55
  • 1897

asp.net使用smtp协议实现简单的发送邮件(支持附件)

引入下面两个名称空间 using System.Net.Mail; using System.Net; 前台页面代码 发送人:...
  • lee_tianya
  • lee_tianya
  • 2013年03月25日 02:22
  • 3414

Jenkins下邮件通知的设置

首先需要安装Email插件,这里就不详讲这部分工作了,主要介绍下邮件的设置。 A点击系统配置 Manage Jenkins  -- Configure System ,滑动到Extend ...
  • chencangui
  • chencangui
  • 2015年09月16日 19:57
  • 1807

IOS iPhone开发中发送e-mail的3种方式

iOS系统框架提供的两种发送Email的方法 1、使用openURL来实现发邮件的功能: NSString *url = [NSString stringWithString: @"mailt...
  • zhibudefeng
  • zhibudefeng
  • 2013年10月22日 19:21
  • 17466

asp.net两种方式的短信接口使用(提供接口的都是收费的)

一种是http请求的方式,另一种就是提供WebService接口供调用的。 #region sms.webchinese.cn 发送短信 //服务商 s...
  • pukuimin1226
  • pukuimin1226
  • 2013年01月25日 15:24
  • 5902

IOS iPhone开发中发送e-mail的3种方式

转载自:http://blog.csdn.net/zhibudefeng/article/details/12952203 iOS系统框架提供的两种发送Email的方法 1...
  • harryptter
  • harryptter
  • 2014年12月11日 16:46
  • 275

iPhone开发中发送e-mail的3种方式

1、使用openURL来实现发邮件的功能: NSString *url = [NSString stringWithString: @"mailto:foo@example.com?cc=b...
  • wangeclipse
  • wangeclipse
  • 2013年11月28日 01:27
  • 617
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用Asp.Net 来发送E-mail
举报原因:
原因补充:

(最多只允许输入30个字)