MAILKIT как переместить сообщения в папку a получить новый уникальный идентификатор

#c# #mailkit #mimekit

#c# #mailkit #mimekit

Вопрос:

MailKit.Net.Imap имеет moveTo(…). Но если мы переместим сообщения, сообщения получат новый уникальный идентификатор (поскольку он уникален по папке). Как мне получить новый уникальный идентификатор сообщения?

Ответ №1:

Методы moveTo, которые принимают UID (или список UID), вернут UID (ы) сообщений в папке назначения.

 var uidMap = folder.MoveTo (uids, destination);
foreach (var uid in uids) {
    Console.WriteLine ("The message with a UID of {0} in {1} is now {2} in {3}",
                       uid, folder.FullName, uidMap[uid], destination.FullName);
}
  

Комментарии:

1. Спасибо за быстрый ответ 🙂 . У вас есть быстрый код, которым вы могли бы поделиться, используя ответ UniqueIdMap , это было бы идеально.

2. UniqueIdMap — это просто словарь сопоставлений UID, где ключом является исходный UID, а значением — новый UID. Посмотрите мой обновленный ответ, и вы скажете «Ого! Это было так очевидно … «.