2016-03-04 2 views

Répondre

7

Cela devrait faire ce que vous avez besoin:

var mimeMessage = MimeMessage.Load(@"test.eml"); 
var attachments = mimeMessage.Attachments.ToList(); 

foreach (var attachment in attachments) 
{ 
    using (var memory = new MemoryStream()) 
    { 
     if (attachment is MimePart) 
      ((MimePart) attachment).Content.DecodeTo (memory); 
     else 
      ((MessagePart) attachment).Message.WriteTo (memory); 

     var bytes = memory.ToArray(); 
    } 
} 
+0

si le type de contenu est "message/rfc822" (la pièce jointe est un e-mail)? Cela ne semblait pas fonctionner avec ce type d'attachement. –

+0

Mis à jour ma réponse pour montrer comment les sauvegarder. – jstedfast

+0

Juste une question, ces deux options couvriront tout type de pièce jointe? –