【问题标题】:What is the "correct" way to use MailKit?使用 MailKit 的“正确”方法是什么?
【发布时间】:2015-05-25 15:33:47
【问题描述】:

我正在使用 MailKit,我想知道正确的使用方法是什么?

我希望我的应用程序在启动时同步收件箱中的所有电子邮件,完成后,监听收到的电子邮件,同时我可以将其他电子邮件从收件箱移动到另一个子文件夹。

我看到 ImapClient 需要处于“空闲”模式才能收听传入的电子邮件,而当你想在文件夹之间移动电子邮件时,你必须退出空闲模式。

为同一个邮件帐户创建 2 个客户端连接是否有意义?一个进入IDLE模式监听新来的邮件,一个对账户中的邮件进行操作???

【问题讨论】:

    标签: c# mailkit


    【解决方案1】:

    您可以这样做,或者您可以在新邮件到达时停止空闲,移动您需要移动的任何邮件,然后重新进入空闲模式。

    【讨论】:

    • 我之所以想到使用两个客户端连接,是因为我不想在非空闲移动过程中丢失新邮件到达的通知。有没有更好的方法来做到这一点?
    • 哦,好吧,如果是这样的话,您在非IDLE移动过程中不会丢失任何通知。 IDLE 命令所做的只是允许 IMAP 服务器发送通知,这些通知通常会作为对其他命令的响应的一部分发送,而客户端不需要发送任何命令。
    • 那么,说得对,是不是说我在没有操作的时候进入IDLE模式,在需要处理的时候退出idle,没有操作的时候再进入idle ?我想我还需要实现一个计时器来处理连接的保持活动状态?
    • 正确,正确,正确。查看 MailKit git repo 中的 ImapIdle 示例,查看任何使用 IDLE 计时器的示例。
    猜你喜欢
    • 2020-06-27
    • 1970-01-01
    • 2021-11-24
    • 2021-09-23
    • 2017-04-07
    • 2013-01-09
    • 2013-03-19
    • 2019-05-11
    • 2018-02-17
    相关资源
    最近更新 更多