【问题标题】:How to Filter with UID in IMapX如何在 IMapX 中使用 UID 进行过滤
【发布时间】:2016-05-25 22:22:30
【问题描述】:

我可以使用这些过滤器成功过滤邮件

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 文档,但都没有运气。

【问题讨论】:

    标签: c# .net winforms imap imapx


    【解决方案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                      
    );
    

    希望对您有所帮助。

    【讨论】:

    • 你是个天才。非常感谢
    • 您是 iMapX 的贡献者吗?
    • 不,我实际上有自己的库,名为 MailKit,它与 ImapX 竞争 :)
    • 太好了。我去看看
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-08-10
    • 2020-03-22
    • 1970-01-01
    • 2023-03-09
    • 2018-07-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多