var summaries = IMailFolder.Fetch(
uids,
MessageSummaryItems.UniqueId |
MessageSummaryItems.Envelope |
MessageSummaryItems.BodyStructure |
MessageSummaryItems.Flags);
一封特定的电子邮件将Envelope.MessageId返回为null。在Gmail中查看邮件ID是:
<1300932178.Ab40.Up on.1342897.1764162864Massi1:[email protected]>
这是一个错误,或者这不是获取消息ID的正确方法?
这是获取Message-Id值的正确方法,但正如您所注意到的,Message-Id标头值包含非法字符。
也就是说,尝试获取协议日志以确定您的IMAP服务器是否在ENVELOPE响应中发送Message-Id标头值。
如果是,请向https://github.com/jstedfast/MimeKit/issues提交错误报告,我将继续修复。
更新:尝试使用https://www.myget.org/feed/mimekit/package/nuget/MimeKit - 只需确保安装版本> = 2.1.4.5