2014-12-21 12:33:02|?次阅读|上传:wustguangh【已有?条评论】发表评论
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
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 附件文件:文本附件。