ASP.NET使用命名空间System.Net.Mail发送邮件

2014-12-21 12:33:02|?次阅读|上传:wustguangh【已有?条评论】发表评论

关键词:C#, 网络通信|来源:唯设编程网

2.3.管理电子邮件地址类: MailAddress类

MailAddress 类表示电子邮件的地址。该类结合SmtpClient类或MailAddress类使用,其实例存储了电子邮件的地址信息。MailAddress类是.NET Framwork新增的类,可以设置电子邮件发件人或收件人的地址。通过该类的属性可以获取电子邮件地址的联系人的详细信息。例如电子邮件中显示联系人的名字和SMPT服务器上的用户名。

语法定义

该类的构造函数有三个重载,下面的代码演示了如何创建其实例:

//指定电子邮件的地址构造一个新实例

MailAddress fromMailBox = new MailAddress("FromMailBox@Sina.com");

//指定电子邮件的地址和显示名称构造一个新实例

MailAddress fromMailBox = new MailAddress("FromMailBox@Sina.com","显示名称");

//指定电子邮件的地址、显示名称和显示名称的编码构造一个新实例

MailAddress fromMailBox = new MailAddress("FromMailBox@Sina.com","显示名称",System.Text.Encoding.Default);

属性详解

Address: 获取电子邮件的地址

DisplayName : 获取在电子邮件显示的名称

Host : 获取服务器名称,也就是在电子邮件地址@符号后的服务器名称

User : 获取用户名称,也就是在电子邮件地址@符号前的用户名

使用实例:

static void Main(string[] args) 
 
{ 
 
    MailAddress  FromMailBox = new MailMessage("FromMailBox@sina.com","张三"); 
 
   Console.WriteLine("电子邮件地址是:{0} 显示名:{1} 服务器名:{2}  用户名:{3}", 
 
    FromMailBox.Address,FromMailBox.DisplayName,FromMailBox.Host,FromMailBox.User): 
 
} 

输出结果: 电子邮件地址是:FromMailBox@sina.com  显示名:张三 服务器名:sina.com 用户名:FromMailBox

2.4.表示电子邮件附件的类: Attachment类

Attachment类表示电子邮件的附件集合。该类结合了MailMessage类一起使用,可以为电子邮件添加附件。该类可以使用字符类型和数据流(Stream)的形式创建附件。支持数据流的形式就意味着能用任何的文件格式作为附件,例如TXT格式或DOC格式。

语法定义

public class Attachment: AttachmentBase

该类的构造函数有6个重载,下面演示创建一个Attachment类的实例的两种常用方式。

Attachment item = new Attachment(@"c:附件.txt",MediaTypeNames.Text.Plain);

以上这种情况,第一个参数为附件的路径,第二个参数附件的MIME内容标头信息,简单来说就是表明文件的格式。

System.IO.FileInfo file = new System.IO.FileInfo(@"c:附件.txt");

System.IO.FileStream stream = file.OpenRead();

Attachment item = new Attachment(stream,MediaTypeNames.Text.Plain);

第二种情况,第一个参数以数据流的方式传入。数据流可以从文件中读出,也可以从数据库中读出。第二个参数跟上一种情况相同。

方法详解:

除了通过new关键字实例化一个Attachment类对象外,还可以用Attachment类提供的静态方法CreateAttachmentFromString来创建该类的一个实例。下面的代码演示了如何使用CreateAttachmentFromString方法。

Attachment item = Attachment.CreateAttachmentFromString(@"c:附件.txt",MediaTypeNames.Text.Plain);

属性详解:

Attachment类通过一些属性来访问附件的内容,其中几个重要的属性及其说明如下:

ContentDisposition : 附件的MIME内容处置

ContentStream : 附件的数据流

ContentType : 附件内容的类型

Name :  附件内容的类型名称

例子:

下面用例子说明Attachment类属性的用法:

static void Main(string[] args)

{

     Attachment content  = new Attachment(@"c:附件.txt",MediaTypeNames.Text.Plain);

    ContentDisposition dispositioin = content.ContentDispositioin;

     disposition.FileName= “文本附件”;

     Console.WriteLine("附件内容名称:{0}   类型名称:{1}     附件文件:{2}",content.Name,content.ContentType.MediaType,content.ContentDisposition.FileName);

}

上面的代码输出结果为: 附件内容名称:附件.txt  类型名称:text/plain     附件文件:文本附件。

发表评论0条 】
网友评论(共?条评论)..
ASP.NET使用命名空间System.Net.Mail发送邮件