Отправка html файла с изображениями по электронной почте - PullRequest
3 голосов
/ 17 мая 2011

Как я могу отправить HTML письмо с изображениями в C #?Могу ли я просто установить прямую ссылку на изображение на моем сервере (что-то вроде <img src="http://mysite.ru/img.png" />) или мне нужно приложить изображение, а затем использовать ссылку на прикрепленный файл?Есть ли примеры или готовые к использованию библиотеки?Как насчет CSS-файлов и скриптов?

Ответы [ 5 ]

3 голосов
/ 17 мая 2011

Существует несколько методов кодирования встроенных изображений. Мы используем VB.NET дома, и этот сайт является отличной ссылкой http://www.systemnetmail.com/default.aspx

3 голосов
/ 17 мая 2011

Если вы непосредственно встраиваете ссылки в электронное письмо (указывающее на внешний сервер), большинство клиентов блокируют вас, но пользователь может включить их.

Они могут быть встроены в обычном порядке:

<img src="http://go.com/go.gif" />

Если вам нужно, чтобы он отображался по умолчанию, вам нужно встроить изображение в качестве вложения и вставить ссылку на это вложение.

См .: http://www.systemnetmail.com/faq/2.6.aspx

2 голосов
/ 17 мая 2011

, вероятно, лучший вариант - использовать какой-нибудь пакет, такой как MvcMailer.

Mvc Mailer отображает следующие характеристики:

MvcMailer без особых усилий отправляет электронные письма с использованием представлений MVC в качестве тела письма. Вот краткий список возможностей:

a) Использование представлений Razor / WebForms

б) Использовать мастер-страницы

в) Написать тестируемый код

d) Передайте значения вашему представлению, используя ViewBag или ViewModel и

e) Создать абсолютный URL-адрес с помощью метода Url.Abs и

f) создавать электронные письма, состоящие из нескольких частей, просто добавив файл представления,

г) эшафот ваших почтовиков. MvcMailer имеет класс MailerBase, который расширяет класс ControllerBase.

Итак, почтовые программы такие же, как ваши контроллеры. В результате вы можете использовать все полезности контроллера без какой-либо кривой обучения, точка. Конечный результат - это профессионально выглядящий HTML-текст, готовый для отправки пользователям вашего сайта.

Посетите сайт Project для получения подробного руководства по MvcMailer. https://github.com/smsohan/MvcMailer/wiki/MvcMailer-Step-by-Step-Guide

В пошаговом руководстве вы узнаете, как отправлять электронные письма с использованием изображений.

brgds. Себастьяне.

2 голосов
/ 17 мая 2011

См. http://en.wikipedia.org/wiki/MHTML:

MHTML, сокращение от MIME HTML, это веб формат страницы архива используется для объединения ресурсы, которые обычно представлены внешними ссылками (такими как изображения, Flash анимация, Java апплеты, аудиофайлы) вместе с HTML-код в одном файле. содержимое файла MHTML кодируется как если бы это было сообщение электронной почты в формате HTML, используя MIME-тип multipart / related. Первая часть файла нормально кодированный HTML; последующие части дополнительные ресурсы, определенные их оригинальные URL-адреса и закодированы в base64. Этот формат иногда упоминается как MHT, после суффикса .mht дается таким файлам по умолчанию при создании Microsoft Word, Internet Explorer или Opera. MHTML это предлагаемый стандарт, распространенный в пересмотренное издание в 1999 году как RFC 2557.

Узнать больше о MHTML может быть ключ к решению проблемы.

2 голосов
/ 17 мая 2011

Для CSS обычно используется встроенный стиль, и нет ссылок на файлы, изображения на другой стороне которых должны быть просто ссылками, а не отправляться вместе с электронной почтой. Вам просто нужно объявить содержимое почты как HTML, и вы готовы к работе. JavaScript также доступен, я использую его для некоторого изменения положения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...