我可以使用这些过滤器成功过滤邮件
imapXInboxFolder.Messages.Download(
"SENTBEFORE 02-Feb-2016",
ImapX.Enums.MessageFetchMode.Tiny, 1
);
// To get 1 mail sent before the date
imapXInboxFolder.Messages.Download(
"FROM 'atlantatechvillage'",
ImapX.Enums.MessageFetchMode.Tiny, 1
);
// To get 1 latest mail from a specific sender
imapXInboxFolder.Messages.Download(
"UID 2345 FROM 'atlantatechvillage'",
ImapX.Enums.MessageFetchMode.Tiny, 1
);
// Having UID 2345 and From the specific sender
因此,如果我只使用UID 2345,我可以毫无问题地收到UID 2345的邮件。
使用上面的过滤器查询,代码检查具有UID 2345的邮件以及它是否与FROM地址条件匹配。如果不存在则返回null
我真正想要的是一个查询,而不是搜索UID大于或小于特定的一个匹配特定的发件人地址查询。
我在互联网上搜索了iMapX文档,但没有运气。
答案 0 :(得分:1)
以下是如何修改上一版本以执行您想要执行的操作:
// search for messages with a UID <= 2345:
imapXInboxFolder.Messages.Download(
"UID 1:2345 FROM 'atlantatechvillage'",
ImapX.Enums.MessageFetchMode.Tiny, -1
);
// search for messages with a UID >= 2345:
imapXInboxFolder.Messages.Download(
"UID 2345:* FROM 'atlantatechvillage'",
ImapX.Enums.MessageFetchMode.Tiny, -1
);
希望有所帮助。