2014-12-21 12:33:02|?次阅读|上传:wustguangh【已有?条评论】发表评论
System.Net.Mail命名空间是在.NET Framework中新增的,该命名空间提供了发送电子邮件的功能。System.Net.Mail命名空间包含用于将电子邮件发送到SMTP服务器的类,这些类需要结合Microsoft STMP Server一起使用。使用该命名空间发送电子邮件常用的类包括5个:
(1). 管理SMTP的类:SmtpClient类
(2). 管理电子邮件内容的类:MailMessage类
(3). 管理电子邮件地址类: MailAddress类
(4). 表示电子邮件附件的类: Attachment类
System.Net.Mail命名空间下有StmpClient类用于发送邮件,可以完全替代SmtpMail类。利用SmtpClient类的Send方法可以完成发送电子邮件的传输,也可以用SendAsync方法进行异步发送,后者发送完成后产生一个SendCompleted事件来通知发送结束。Send方法可以接受MailMessage类的对象作为参数。通过MailMessage类可以设置邮件更多的内容和格式,例如,为Attachment类设置添加附件的参数。
SmtpClient类与SMTP结合在一起,通过MailMessage类、MailAddress类、Attachment类来丰富电子邮件的内容和设置。下面展示了用户通过System.Net.Mail命名空间下的类结合SMTP发送电子邮件的过程。
SmtpClient类封装了将电子邮件发送到SMTP服务器的方法和属性。
SmtpCleint类用于让应用程序向Smtp服务器发送电子邮件,可以通过同步或者异步的方法发送电子邮件。通过结合MailMessage类使用,还可以设置邮件的格式、添加抄送人、添加附件等。
语法定义:
SmtpClient类的语法定义如下:
public class SmtpClient
下面的代码演示如何创建一个SmtpClient的实例
SmtpClient client = new SmtpClient("smpt.Sina.com"); //直接通过构造函数设置SMTP主机服务器
或:
SmtpClient client = new SmtpClient(); Client.Host = "smtp.Sina.com"; // 通过Host属性来设置SMTP主机服务器
方法详解:
SmtpClient类主要使用SMTP来同步或异步地发送电子邮件。其中最常用的方法及其说明如下:
发送电子邮件时,只要简单地调用Send方法就可以了,其中Send方法有两个重载:
public void Send(MailMessage message) 其中,参数message是MailMessage类的一个实例。
public void Send(string from ,string recipients,string subject,string body) ,第二个有四个参数,其代表意义如下:
from : 包含邮件发件人的地址信息。
recipients :包含邮件收件人的地址信息。
subject :包含邮件的主题行。
body :包含邮件的正文。
例子:
下面的代码演示了如何使用Send函数发送电子邮件:
static void Main(string[] args) { SmtpClient client = new SmtpClient(); //此处省略了client属性设置代码 client.Send("FromMailBox@Sina.com", "ToMailBox@Sina.com","电子邮件示例","您好,收到了吗?"); Console.WriteLine("邮件已经成功发送到{0}","ToMailBox@Sina.com"); }
技巧:如果不想主线程等待传输电子邮件完成后再执行,可以使用异步SendAsync方法。SendAsync操作完成时会引发SendCompleted事件。