Fetching emails for a specific date in c# using Exchange Web Services

删除回忆录丶 提交于 2019-12-05 04:19:36

I think the way SilverNinja told you is the right way. You should search the items like this:

DateTime searchdate = new DateTime (2012,7,6) //Year, month, day
SearchFilter greaterthanfilter = new SearchFilter.IsGreaterThanOrEqualTo(ItemSchema.DateTimeReceived, searchdate );
SearchFilter lessthanfilter = new SearchFilter.IsLessThan(ItemSchema.DateTimeReceived, searchdate.AddDays(1));
SearchFilter filter = new SearchFilter.SearchFilterCollection(LogicalOperator.And, greaterthanfilter, lessthanfilter);
Folder folder = Folder.Bind(this.m_Service, WellKnownFolderName.MsgFolderRoot); //Or the folder you want to search in
FindItemsResults<Item> results = folder.FindItems(filter, new ItemView(1000));

"results.Items" will return the first 1000 items which are recivied at the day you are looking for.

Take a look at SearchFilter examples. You just need a filtering condition on ItemSchema.DateTimeReceived

This will work.

if (em.DateTimeReceived.Equals(**Date you want to search**))
                {
                    strMsg = strMsg + em.Body.Text.ToString();
                }
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!