c# 邮件读取——EWS

工作中遇到的 邮件读取 期初打算用POP3 ,但是发现无法读取的时候筛选邮件条件,因此就使用了EWS。用EWS原因是支持其筛选条件

使用的程序集 Microsoft.Exchange.WebServices

 1  ExchangeService service = new ExchangeService(ExchangeVersion);//版本选择
 2             //参数是用户名,密码 
 3             service.Credentials = new WebCredentials("用户名", "密码");
 4             //给出Exchange Server的URL http://xxxxxxx 
 5             //url  这里有两种 一种是owa 另一种是.asmx 
 6             service.Url = new Uri("");
 7             //你自己的邮件地址 xxx@xxx.xxx  
 8             service.AutodiscoverUrl(request.EamilAddress);
 9             FindItemsResults<Microsoft.Exchange.WebServices.Data.Item> findResults = service.FindItems(WellKnownFolderName.Inbox, SetFilter(开始时间, 结束时间), new ItemView(1000));
10 //邮件筛选
11       private static SearchFilter SetFilter(DateTime starttime,DateTime EndTime)
12         {
13             List<SearchFilter> searchFilterCollection = new List<SearchFilter>();
14             SearchFilter start = new SearchFilter.IsGreaterThan(EmailMessageSchema.DateTimeReceived, starttime);
15             searchFilterCollection.Add(start);
16             SearchFilter end = new SearchFilter.IsLessThan(EmailMessageSchema.DateTimeReceived, EndTime);
17             searchFilterCollection.Add(end);
18             SearchFilter filter = new SearchFilter.SearchFilterCollection(LogicalOperator.And, searchFilterCollection.ToArray());
19             return filter;
20         }
View Code

SearchFilter 是筛选类 用于邮件筛选

EmailMessageSchema是与具体邮件的筛选  可以根据发件日期、发件人、主题等等进行对邮件的过滤

 

posted @ 2018-04-06 15:57  LvTwocold  阅读(686)  评论(0)    收藏  举报