如何从数据库中获取HTML电子邮件?

时间:2011-09-05 06:20:44

标签: asp.net-mvc database model-view-controller asp.net-mvc-3 stored-procedures

我正在尝试从MS SQL数据库使用存储过程中获取电子邮件内容(navchar)(例如:<p><a></a></p>)。 有没有人知道如何从数据库中获取html代码并将其转换为某种格式然后作为电子邮件发送出去? ps:我需要结合

<html><body>+ content+</body></html> 

干杯。

2 个答案:

答案 0 :(得分:3)

最好的方法是在数据库的Html中放置一些占位符,然后用值替换它们。 例如: 将其作为模板保存在数据库中 [## BODY ##]

        var template= [read template from database]
        StringBuilder s = new StringBuilder(template);
        var bodyValue ="your body value perhaps user name and blab blab"
        s.Replace("[##BODY##]",bodyValue);

然后将其用作电子邮件正文 var emailbody = s.ToString();

答案 1 :(得分:0)

使用存储过程中的简单SELECT语句从数据库中选择所需的信息。它应该作为字符串返回。从现在开始格式化您的电子邮件,您有两个选择...

A)如下所示连接字符串:

string stringFromTheDatabase = "<p><a></a></p>";

string concatenatedHTML = "<html><body>" + stringFromTheDatabase + "</body></html>";

B)使用String.Format()格式,如下所示:

string formattedString = String.Format("<html><body>{0}</body></html>", stringFromTheDatabase);

最后但并非最不重要:发送它!就个人而言,我只是使用System.Net.mail nampespace下的内置MailMessage类。