MimeKit添加附件从MHT文件

问题描述:

嗨加载我们正试图开发一种使用邮件发送MailKit系统的消息。我们有一组电子邮件模板,它们使用WORD创建并保存为MHTML文件。整个事情是工作的罚款,当我们使用MailKit从MHT文件中创建一个MimeMessage。MimeKit添加附件从MHT文件

但是后创建这个消息,我无法看到添加附件,以这种的方式。

目前,我们正在尝试以下。

private void SendEmail(string templatePath, List<string> attachments) 
    { 
     // Load the MHT Template 
     var mimeMessage = MimeMessage.Load(templatePath); 

     mimeMessage.From.Add(new MailBoxAddress("[email protected]")); 
     mimeMessage.To.Add(new MailBoxAddress("[email protected]")); 

     foreach (var attachment in attachments) 
     { 
      var fileAttachment = new MimePart() 
      { 
       ContentObject = new ContentObject(File.OpenRead(Path.Combine(attachment), ContentEncoding.Default), 
       ContentDisposition = new ContentDisposition(ContentDisposition.Attachment), 
       ContentTransferEncoding = ContentEncoding.Binary, 
       FileName = Path.GetFileName(attachment) 
      }; 

      // Attachments is a read only Enumerable here. 
      mimeMessage.Attachments.Add 
     } 

    } 

您需要遍历消息的MIME树结构,直到找到Multipart你想在“附件”添加到,然后使用Multipart.Add()方法。

请注意,消息是一个嵌套树结构,并且未明确限定的结构,其仅具有1消息体(或甚至只是2)和附件的列表。这是一大堆复杂多了,所以有字面上没有办法MimeMessage.Attachments“做正确的事”。

+0

我会试试这个,我们通过从mht加载一次消息并将消息的所有正文部分与附件一起添加到多部分并创建新消息来获得它的工作。但是我肯定会试试这个并让你知道 – Abhilash