用asp.net创建复杂的html电子邮件消息的最佳方法是什么?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (59)

用户下订单后,我必须发送详细的电子邮件,其中包含订单详情,付款说明,一些其他文字等。

我想创建格式良好的HTML电子邮件消息。

到现在为止我找到了两个选择:

  • 逐个手工创建,逐字符串,这太麻烦了,
  • 创建实际的aspx页面和绑定数据,然后将该页面呈现为html并作为电子邮件正文发送。

第二个选项更直观,更容易实现,除了:

  • 我不知道如何实际加载和渲染页面,我知道如何使用ascx
  • 这似乎是实例化页面并渲染它的大量开销

如何加载页面并渲染它?您对此任务有任何其他想法或建议吗?

提问于
用户回答回答于

就个人而言,我想在数据库中使用模板,或者作为加载的文件。此模板将包含HTML中电子邮件的大部分内容,其中包含可以替换内容的令牌。

恩。

<b>Receipt for order # [[ordernum]]</b>

这样我就可以使用简单的字符串替换将动态内容放入电子邮件中,而无需在每次需要发送时构建整个电子邮件。

用户回答回答于

那么,IMO,你的基本问题相当于“我如何将ASPX资源转换为HTML字符串以传递给MailMessage Body属性?”

您可以通过使用WebRequest到相关的ASPX URL并将该响应读入Stream来实现。然后只需将流读入字符串,您的主要问题就解决了。

编辑:这是一篇说明这个概念的文章

扫码关注云+社区

领取腾讯云代金券