使用Mailkit使用IMAP保存附件

The*_*dge 2 c# mailkit

我需要在Google 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
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

The*_*dge 7

最终获胜者是.....

attachment.ContentDisposition.FileName
Run Code Online (Sandbox Code Playgroud)