gpt4 book ai didi

c# - 我可以使用 ASP.NET 设置 HTML/电子邮件模板吗?

转载 作者:IT王子 更新时间:2023-10-29 03:36:35 25 4
gpt4 key购买 nike

我正在开发一个会发送大量电子邮件的网站。我想设置页眉和页脚文本,甚至可能设置模板以允许用户在需要时轻松编辑这些电子邮件。

如果我将 HTML 嵌入到 C# 字符串文字中,这很丑陋,他们将不得不担心转义。包括页眉和页脚的平面文件可能有效,但感觉有些不对劲。

以某种方式使用 .ASPX 页面作为模板,然后只需告诉我的代码为该页面提供服务,并使用为电子邮件返回的 HTML,这将是理想的选择。

有没有一种简单易行的方法来做到这一点?有没有更好的方法来解决这个问题?

更新:
我添加了一个答案,使您能够使用标准的 .aspx 页面作为电子邮件模板。只需像往常一样替换所有变量,使用数据绑定(bind)等。然后只需捕获页面的输出,瞧!您有自己的 HTML 电子邮件!

已更新警告!!!:
我在某些 aspx 页面上使用 MailDefinition 类很好,但是当试图在正在运行的服务器进程中使用此类时,它失败了。我相信这是因为 MailDefinition.CreateMailMessage() 方法需要一个有效的控件来引用,即使它并不总是做某事。因此,我会推荐我的方法使用 aspx 页面,或者 Mun 的方法使用 ascx 页面,这似乎更好一些。

最佳答案

这里已经有大量答案,但我偶然发现了一篇关于如何将 Razor 与电子邮件模板结合使用的精彩文章。 Razor 是通过 ASP.NET MVC 3 推出的,但 MVC 并不是使用 Razor 所必需的。这是制作电子邮件模板的非常巧妙的处理

正如该文章指出的那样,“Razor 的最佳之处在于,与其前身(webforms)不同,它不依赖于 web 环境,我们可以轻松地将它托管在 web 之外,并将其用作模板引擎以实现各种目的。”

Generating HTML emails with RazorEngine - Part 01 - Introduction

Leveraging Razor Templates Outside of ASP.NET: They’re Not Just for HTML Anymore!

Smarter email templates in ASP.NET with RazorEngine

类似的 Stackoverflow QA

Templating using new RazorEngine API

Using Razor without MVC

Is it possible to use Razor View Engine outside asp.net

关于c# - 我可以使用 ASP.NET 设置 HTML/电子邮件模板吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/620265/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com