Я разрабатываю почтовый клиент, используя mailkit. Мне нужно отображать электронные письма в виде разговоров, например, как они отображаются в клиентах веб-почты. Когда я пытаюсь получить данные с помощью mailkit для всей цепочки писем, я могу получить только первое электронное письмо от беседы.
Я проверил значение ImapCapabilitites.Thread
с помощью mailkit, и он вернул false. Итак, я пытаюсь получить поток электронной почты, который имеет 3 сообщения, и я получаю только первое сообщение в качестве вывода, и число дочерних объектов объекта потока всегда равно нулю. Пожалуйста, проверьте приведенный ниже код и дайте мне знать, если мне не хватает каких-либо флагов, которые необходимо передать
var summaries = targetFolder.Fetch(requestFilter, MessageSummaryItems.Envelope | MessageSummaryItems.Flags | MessageSummaryItems.References);
var orderBy = new OrderBy[] { OrderBy.ReverseDate };
var threads = MessageThreader.Thread (summaries, ThreadingAlgorithm.References, orderBy);
Где requestFilter
- это IList<UniqueId>
, а targetFolder
- это подпапка внутри папки входящих сообщений в в которой хранится почтовый поток.