在代码隐藏中从 Web.Config 中检索 HTML

Retrieve HTML from Web.Config in Code-Behind

Web.Config:

<appSettings>
    <add key="html1" value="This is &lt;br /&gt; HTML email"/>
</appSettings>

我正在尝试生成 HTML 格式的电子邮件。在将数据放入 Web.Config 之前,我的文本和 HTML 电子邮件的格式都正确。

在代码隐藏中:

StringBuilder emailMessageString = new StringBuilder();
emailMessageString.Append(WebConfigurationManager.AppSettings["html1"].ToString());

在HTML邮件中输出:

这是
HTML电子邮件

HTML 电子邮件中的预期输出:

这是

HTML 电子邮件

更新 - 2015 年 2 月 19 日

我为生成 HTML 电子邮件而编写的代码似乎无法正常工作,并且之前已将代码发布在这个问题中(在我自己的回答中)。有人能看出我做错了什么吗,因为看起来只有文本电子邮件在工作:

Correct Syntax for Generating HTML Email using AlternateView

您无需再次解码。这应该可以解决它 -

var body = new StringBuilder();
body.Append(WebConfigurationManager.AppSettings["html1"]);

此外,请确保将 IsBodyHtml 设置为 true。

var message = new MailMessage();
message.IsBodyHtml = true;

你好兄弟你可以用Server.HtmlDecode(string s)

见下方代码

StringBuilder emailMessageString = new StringBuilder();
emailMessageString.Append(Server.HtmlDecode(WebConfigurationManager.AppSettings["html1"].ToString()));