MailKit сохранить вложения
Я пытаюсь сохранить вложения из сообщения
foreach(MimeKit.MimeEntity at message.Attachments)
{
at.WriteTo("nameFile");
}
файл сохранен, но когда я открываю, я получаю ошибку файл поврежден или слишком велик Размер файла 88 КБ, но размер файла должен быть равен 55 КБ.
Я думаю, что во всех записанных файлов сообщений.
Как записать только вложение?
MailKit v1.2.0.0 MimeKit 1.2.0.0
1 ответов
вы сохраняете весь объект MIME (включая заголовки). Что вам нужно сделать, так это сохранить содержимое.
foreach (var attachment in message.Attachments) {
using (var stream = File.Create ("fileName")) {
if (attachment is MessagePart) {
var part = (MessagePart) attachment;
part.Message.WriteTo (stream);
} else {
var part = (MimePart) attachment;
part.ContentObject.DecodeTo (stream);
}
}
}
надеюсь, что это поможет.