Mailkit MimeKit.MimeMessage ошибка: неизвестный параметр инициализации: System.Byte [] - PullRequest
0 голосов
/ 25 октября 2018

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

var mail = new MimeKit.MimeMessage();
var file = System.IO.File.ReadAllBytes("sample.eml"));
var orgMessage = new MimeKit.MimeMessage(file);

var builder = new MimeKit.BodyBuilder();
builder.TextBody = "user comment";
builder.Attachments.Add(new MimeKit.MessagePart { Message = orgMessage });
mail.Body = builder.ToMessageBody();

Сначала в строке 3 я получаюэта ошибка: неизвестный параметр инициализации: System.Byte []

Во-вторых, я прочитал этот замечательный ответ Пересылка электронной почты с использованием MailKit (C #) и для чего повторно отправляются параметры?если я установлю им мой комментарий на переадресованную электронную почту не установлен?и что электронная почта пересылается явно без каких-либо изменений?

1 Ответ

0 голосов
/ 26 октября 2018

Неизвестный параметр инициализации: System.Byte []

Это означает, что не существует конструктора MimeMessage, который принимает параметр byte[].

В другихслова, вы не можете сделать это:

var file = System.IO.File.ReadAllBytes("sample.eml"));
var orgMessage = new MimeKit.MimeMessage(file);

Правильный способ загрузки сообщения из файла заключается в следующем:

var orgMessage = MimeMessage.Load ("sample.eml");

Во-вторых, я прочитал это здоровоответить на пересылку электронной почты с помощью MailKit (C #) и для чего нужны параметры?если я установлю им мой комментарий на переадресованную электронную почту не установлен?и что электронное письмо повторно отправляется явно без каких-либо изменений?

Свойства MimeMessage.Resent* используются только при пересылке сообщения без присоединения его к новому сообщению.

Вам нужно выбрать только 1из 3-х решений в моем ответе, с которыми вы связались.

Если вы собираетесь прикрепить исходное сообщение (как вы делаете), то вы НЕ ДОЛЖНЫ использовать свойства Resent MimeMessage.

...