Пустой файл при отправке электронного письма с вложением

Я пытаюсь отправить emil с вложением, используя почтовую структуру для MVC.

Я могу отправлять электронные письма с помощью Postal без проблем, однако, когда я пытаюсь отправить электронное письмо с вложением, файлы остаются пустыми.

Вот мой код:

dynamic emailNovoOrcamento = new Email("OrcamentosServicos/NotificaNovoOrcamento");
emailNovoOrcamento.To = usuario.UsuEmail;
emailNovoOrcamento.From = "[email protected]";
emailNovoOrcamento.Subject = "Test...";

ContentType conteudo = new ContentType();
conteudo.MediaType = MediaTypeNames.Image.Jpeg;
conteudo.Name = "userPhoto.jpg";

Attachment imagemDestinatario = new Attachment(new getUserPhotoStream(usuario), conteudo);
emailNovoOrcamento.Attachments.Add(imagemDestinatario);
emailNovoOrcamento.Send();

getUserPhotoStream - это метод, преобразующий byte[] в Stream:

public MemoryStream getUserPhotoStream(byte[] photo)
{
    MemoryStream imagemStream = new MemoryStream();
    Image imagem;
    MemoryStream imagemUsuarioStream = new MemoryStream(photo);

        imagem = Image.FromStream(imagemUsuarioStream);
        imagem.Save(imagemStream, ImageFormat.Jpeg);
        return imagemStream;
    }
}

Когда я отправляю его по электронной почте, размер файла составляет 0 КБ.

Что я делаю неправильно?


person Dan    schedule 29.09.2015    source источник


Ответы (2)


Перед использованием установите положение потока равным 0:

// ...
imagem.Save(imagemStream, ImageFormat.Jpeg);
imagemStream.Position = 0;
return imagemStream;
person Kvam    schedule 29.09.2015

Отправка электронной почты с вложениями из C # вложения поступают как часть 1.2 в Thunderbird

Смотрите, это может дать некоторое представление. Я сделал что-то вроде тебя, но отсюда.

person Abhishek Kumar    schedule 29.09.2015