2015-09-09 3 views
1

Мне нужно найти конкретное письмо на сервере IMAP Google и сохранить его в электронном письме. Я думаю, что все это выяснено, за исключением части определения того, что имя файла имеет вложение.Использование Mailkit для сохранения вложений с использованием IMAP

Ниже мой код до сих пор, я надеюсь, что кто-то может указать мне в правильном направлении, чтобы определить имя файла.

У меня есть Googled и SO'd, но не удалось найти что-то, используя подход к подключению.

internal class MailKitHelper 
{ 
    private void SaveAttachementsForMessage(string aMessageId) 
    { 
     ImapClient imapClient = new ImapClient(); 
     imapClient.Connect("imap.google.com", 993, SecureSocketOptions.Auto); 
     imapClient.Authenticate("xxxx", "xxxx"); 

     HeaderSearchQuery searchCondition = SearchQuery.HeaderContains("Message-Id", aMessageId); 
     imapClient.Inbox.Open(FolderAccess.ReadOnly); 
     IList<UniqueId> ids = imapClient.Inbox.Search(searchCondition); 

     foreach (UniqueId uniqueId in ids) 
     { 
      MimeMessage message = imapClient.Inbox.GetMessage(uniqueId); 

      foreach (MimeEntity attachment in message.Attachments) 
      { 
       attachment.WriteTo("WhatIsTheFileName"); //How do I determine the file name 
      } 
     } 
    } 
} 

ответ

6

И победитель .....

attachment.ContentDisposition.FileName 
+0

был просто написать пост, чтобы сказать, что это ответ или вы можете использовать 'MimePart' вместо' MimeEntity' и свойство FileName выставлено на том, что , –

Смежные вопросы