通过电子邮件发送HTML
问题描述:
我需要我的.NET桌面应用程序能够发送各种HTML邮件,允许用户创建自定义模板,包括图像和可能的CSS样式(如果他们从其他来源复制/粘贴HTML) 。通过电子邮件发送HTML
从我一直在读,这不是那么简单:
- 图像需要被嵌入,并与内容ID包含图像也
- CSS样式需要修复更换他们的链接
- 背景颜色/图像不起作用,最好将邮件包装在表格中并将CSS应用到它
- SMTP服务器可以将以点开头的行解释为“传输结束”,因此至少必须有一个空格添加到所有这些行
- 谁知道还有什么
我的问题是:
- 还有什么我应该照顾?
- 有没有图书馆已经这样做,我不重塑?
答
我可以想到的一件事是,使用Alternate views的邮件客户端不能/不会接受HTML电子邮件(或他们已关闭它)的收件人。这样他们会得到一个纯文本版本,如果他们决定要查看它,你可以在网页上直接包含一个html版本的链接。
我也听说不包括纯文本版本会增加被标记为垃圾邮件的可能性 - 这是由于许多邮件过滤器比较邮件的纯文本和html版本;如果它们差异太大,对你来说不是一个好兆头:-)
其他垃圾邮件指标包括html文件,其中包含比文本更多的图片,并且通常是潦草的HTML - 破坏的CSS,错误的链接,缺少的标签等 - 考虑使用一些发送前的标记验证器。
答
我发现以下CodeProject上的文章,其中介绍了如何嵌入各种图像资源投入到信箱:
它有一些有用的例子,虽然它似乎没有包括一个替代纯文本视图,所以我将不得不补充说明。
很遗憾,没有人把自己做的东西放在一起。
我是那些会抱怨的人之一,如果它没有直接的文本,因为如果我用elm读取它,我所得到的只是html,我倾向于不读它:) – BugFinder