C# 如何获取日期范围内的邮件?

C# 如何获取日期范围内的邮件?,c#,asp.net,imap,C#,Asp.net,Imap,在C#上工作。在我的桌面应用程序中,我可以成功地使用 从收件箱中获取邮件。但无法获取日期范围内的邮件。假设希望获取日期范围在2011年11月27日至2011年11月28日之间的邮件。我写了下面的语法,但不起作用 Imap4Client imap = new Imap4Client(); imap.ConnectSsl(sImapHost, nImapPort); imap.Login(sImapUser, sImapPassword); inbox = imap.SelectMailbox(@

在C#上工作。在我的桌面应用程序中,我可以成功地使用 从收件箱中获取邮件。但无法获取日期范围内的邮件。假设希望获取日期范围在2011年11月27日至2011年11月28日之间的邮件。我写了下面的语法,但不起作用

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"));
需要帮助获取日期范围内的邮件

如果有任何疑问,请询问。提前感谢

MessageCollection messages = inbox.SearchParse("SINCE " + DateTime.Now.ToString("dd-MMM-yyyy")); 
指从今天开始的邮件。 但你想从另一个时间开始

var自=新日期时间(2011年11月27日); var messages=inbox.SearchParse(“自”+自.ToString(“dd-MMM-yyyy”)

编辑

仔细观察,语法是不同的

var messages = inbox.SearchParse("SEARCH SINCE 27-Nov-2011 NOT BEFORE 28-NOV-2011");

你在用什么图书馆?我猜你在用MailSystem.NET?如果你想在问题中提到这一点,那似乎是一个类名,而不是库名。我仍然很确定你在使用MailSystem.NET。问题中的类是这样的,因此您可能需要将源代码添加到解决方案中,然后逐步执行.SearchParse()。问题中的链接现在会指向一个python页面。如果你发布错误消息的文本,我们可能会更进一步。可能不是库不理解该命令,而是Gmail IMAP服务器不理解该命令或日期格式。从C#到互联网标准,很难说预期的日期格式是什么,但是所有的编程语言逻辑都是一样的。我的要求并不是那么复杂。只是想知道如何获取最新的邮件。Matthewmartin我使用ActiveUp.Net.Imap4.dllesskar。谢谢你的回复。谢谢你的上述语法。我的朋友我知道这一点,但问题是,如果我想在2011年11月27日到11月28日之间收到邮件,那么我就失败了。请告诉我如何为此编写查询。再次感谢“失败”是什么意思?你有例外吗?它没有归还任何东西吗?请再详细一点!我会使用esskar的建议,然后对结果进行foreach循环,以剔除超出所需日期范围的任何内容。