利用Microsoft.Exchange.WebServices处理Office365邮件的几个属性

使用Microsoft.Exchange.WebServices可以很方便操作Office365邮件。这里列出几个重要的属性。

通常,代码里会先定义一个WebServices对象

    ExchangeService service = new ExchangeService();

(1)service.Timeout = 200000;

默认service操作Office365是100秒,但是,如果程序连接服务器需要较长时间,会经常出现连接服务器超时现象,利用Timeout属性,可以延长请求的时间。

(2)SearchFilter unreadFilter = new SearchFilter.SearchFilterCollection(LogicalOperator.And, new SearchFilter.IsEqualTo(EmailMessageSchema.IsRead,false));

 利用SerchFilter属性,可以自定义获取Office365邮件的类型,在上面通过设置EmailMessageSchema.IsRead为false来获取未读的邮件。

(3)  fetchemail.Load();

当获取邮件后,默认系统是不返回邮件body主题内容的(例如你一次性获取1000封邮件,系统仅返回核心内容,如邮件接收时间,邮件标题,但是不返回邮件主体)

需要手动调用Load()方法

(4)  Microsoft.Exchange.WebServices.Data.AttachmentCollection attachments = fetchemail.Attachments;

Webservices提供了AttachmentCollection对象,可以获取邮件的附件集。

但是,和邮件类型,系统返回的附件列表也只是附件的标题,所以你需要调用 fileAttachment.Load();来获取附件具体内容。

(5)    fetchemail.IsRead = true;            fetchemail.Update(ConflictResolutionMode.AlwaysOverwrite);

可以利用Update方法更新邮件。

posted @ 2015-12-25 21:15  启明星工作室  阅读(1995)  评论(0编辑  收藏  举报