首页 > 解决方案 > 查找 gmail 中最旧邮件的日期

问题描述

如何在 gmail 帐户中找到最旧邮件的日期?

如果我这样做

var messages = imapFolder.Fetch(0, -1, MessageSummaryItems.UniqueId | MessageSummaryItems.InternalDate).ToList();

我得到了一个 uid 和日期的列表,但它们似乎没有按日期顺序排序。

最后一行不是最旧的。

标签: mailkit

解决方案


一般来说,消息越旧,它在列表中的位置就越早。换句话说,文件夹中最旧的消息通常是第一条消息,而不是最后一条。

也就是说,您可以使用MessageSorter扩展方法对列表进行排序。

var messages = imapFolder.Fetch(0, -1, MessageSummaryItems.UniqueId | MessageSummaryItems.InternalDate ).ToList();
messages.Sort (new OrderBy[] { OrderBy.Date });

或者,如果您希望它们以相反的日期顺序排列:

messages.Sort (new OrderBy[] { OrderBy.ReverseDate });

推荐阅读