I have observed a weird behaviour when using the MailMessage.Load(Stream stream) method.
Here is code:
MailMessage messageContainer = MailMessage.Load(new MemoryStream(eml.Content));
Where eml.Content is a byte array holding the contents of the email.
The .eml file contains 4 attachments. A .txt, .docx, .jpg, and a .p7s.
When the code above has “loaded” the bytes then the attachments contain 2 files. One empty file called ATT00001.signed and the .txt file.
This obviously causes problems since some attachments are lost and that new file called ATT00001.signed was never there to beging with.
LinkedResources is empty as well.