#.net #email #imap
#.net #Адрес электронной почты #imap
Вопрос:
Я использую почтовую систему.Функциональность NET IMAP для извлечения электронной почты.
Подключение и вход в систему завершаются успешно, и я вижу, что на сервере есть 4 сообщения. Когда я извлекаю сообщения, я могу прочитать тему, от / до и т.д. Однако, когда я читаю тело электронного письма, отображается только часть тела.
Message msg = inbox.Fetch.MessageObject(i);
Console.WriteLine(msg.BodyHtml.Text);
Приведенный выше код отобразит:
<!DOCTYPE
Как я могу получить полное содержимое тела электронной почты? (Также спрашивалось в CodePlex, но там не так много активности).
С уважением,
Мишель
Комментарии:
1. Как выглядит дробь? Что вы получаете, если используете что-то вроде
BodyPlainText
(если таковое существует)?2. сообщение msg.bodyText. Текст представляет собой пустую строку. Я добавлю дробь к своему вопросу.
3. Можете ли вы просмотреть (и опубликовать) реальное необработанное содержимое сообщения в почтовом клиенте? Мне кажется, что это ошибка в библиотеке.
Ответ №1:
Проблемы с IMAP могут помочь в ваших поисках.
Ответ №2:
Сейчас я использую другую библиотеку, но когда я проверил codeplex, был предоставлен ответ:
Похоже, это результат последнего изменения http://mailsystem.codeplex.com/SourceControl/changeset/changes/59386. Я не знаю, в чем причина этого изменения, но это кажется абсолютно нелогичным. Если вы удалите это из своего исходного кода, система будет работать нормально.
Ответ №3:
Попробуйте этот код:
Message mailMsg = mailbox.Fetch.MessageObject(i);
string mailBodyContent = system.Text.Encoding.UTF8.GetString(mailMsg.OriginalData);
Console.WriteLine(mailBodyContent);
Это вернет весь текст письма.