0

当我打电话

var result = MailKit.GetMessage(uid)

然后呼叫需要大约 4 秒才能返回。有没有更好/更快的方法从服务器获取 mime 消息?目前正在执行以下操作:
1. Fetch(0, -1, MessageSummaryItems.UniqueId | MessageSummaryItems.Envelope | MessageSummaryItems.Flags)
2.循环获取结果以查找 messageId 匹配
3.使用之前找到的 UID 发送 GetMessage()。

我可以看到,在大多数情况下,FETCH 大约需要 2 秒,我的整个过程将需要大约 6 秒,这在我可以在客户端中显示电子邮件之前有点“长”。

有没有一种更快的方法来使用 MailKit 从邮件服务器获取 mime 消息,当我对电子邮件的所有了解都是MessageID??

4

1 回答 1

0

您可以缓存所有消息摘要,这样您就不必每次都向服务器询问它们......

你也可以试试:

var uids = folder.Search (SearchQuery.HeaderContains ("Message-Id", messageId));
if (uids.Count > 0)
    message = folder.GetMessage (uids[0]);
于 2015-05-29T11:17:58.873 回答