Спасибо Benoit Gidon
за ответ.Мне еще раз доказали, что ваши предположения являются вашим злейшим врагом.
Очевидно, это так просто, и вам не нужны никакие другие специальные методы, если вы помещаете файл. InputStream непосредственно во вложение, в отличие отдругие сообщения SO заставляют вас поверить: /8208505/prikrepite-neskolko-formatov-izobrazhenii-a-ne-tolko-jpg-k-elektronnoi-pochte
/5681439/prikrepite-fail-iz-memorystream-k-mailmessage-v-c
На случай, если кто-то действительно борется с этим, вот код:
foreach (HttpPostedFileBase file in fullViewModel.filesCollection)
{
string filename = file.FileName;
msg.Attachments.Add(new Attachment(file.InputStream, filename, MediaTypeNames.Application.Octet));
}
Я проверялэто с документом .docx
, в котором содержалось 5000 words
контента, а также tables
и pictures
, и его реконструируют так, как это было в моем клиенте gmail.
Только что проверил, чтотакже работает с .png
, поэтому нет необходимости в PngBitmapDecoder
.