Как получить почту в диапазоне дат? - PullRequest
1 голос
/ 30 ноября 2011

Работа на C #. В моем настольном приложении я могу успешно использовать IMAP4 для получения писем из входящих сообщений. Но не удается получать письма с указанным диапазоном дат. предположим, хотят получать письма в диапазоне с 27 ноября 2011 года по 28 ноября 2011 года. Я пишу ниже синтаксис, но это не работа.

Imap4Client imap = new Imap4Client();
imap.ConnectSsl(sImapHost, nImapPort);
imap.Login(sImapUser, sImapPassword);

inbox = imap.SelectMailbox(@"[Gmail]/Sent Mail");


MessageCollection messages = inbox.SearchParse("SINCE " + DateTime.Now.ToString("dd-MMM-yyyy"));

Нужна помощь для получения писем в диапазоне дат.

Если есть какие-либо вопросы, пожалуйста, спросите. Спасибо заранее.

1 Ответ

3 голосов
/ 30 ноября 2011
MessageCollection messages = inbox.SearchParse("SINCE " + DateTime.Now.ToString("dd-MMM-yyyy")); 

означает почту с сегодняшнего дня. но ты хочешь их с другого раза

var Since = new DateTime (2011, 11, 27); var messages = inbox.SearchParse ("SINCE" + since.ToString ("dd-MMM-гггг"));

EDIT

Заглянул в Mailbox.cs , синтаксис другой

var messages = inbox.SearchParse("SEARCH SINCE 27-Nov-2011 NOT BEFORE 28-NOV-2011");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...