如何检索从aspx页面动态生成的HTML?

时间:2010-07-28 19:00:32

标签: asp.net html vb.net

具体来说,这就是我正在做的事情,这就是我要做的事情:

我正在编写一个ASP.NET页面,后面是VB代码。当用户点击页面上的按钮时,我会向他们发送包含信息和说明的电子邮件。我发送一个漂亮的,漂亮的HTML格式的电子邮件,而不是发送纯文本电子邮件。现在,我正以一种我知道难以维护的方式这样做。也就是说,我直接写出所有的HTML。即。

    markup += "<fieldset>"

    markup += "<legend>"
    markup += "Required Documents"
    markup += "</legend>"

......等等。有没有办法创建一个aspx页面(后面有vb代码),并在电子邮件正文中发送该页面的html?信息是动态的,因此这个伪页面需要在on-load事件中使用逻辑来正确格式化html。

谢谢!

3 个答案:

答案 0 :(得分:1)

WebClient client = new WebClient ();
string html = client.DownloadString("http://domain.com/emailtemplate.aspx?id=1");

答案 1 :(得分:0)

如果你有权访问数据库,你可以随时删除html,否则我通过创建一个带有[replace]部分的mailtemplate.html文件解决了这个问题,所以你所要做的就是将文件读入字符串对象替换然后将其发送出去。

如果必须,可以通过这种方式维护多个模板。我主要将其用作我的系统需要发送的电子邮件的包装器,因此我的模板中有一个[body]标签,可以替换为我需要发送的任何消息。我还使用此方法将多个文件包装到单个电子邮件输出中。

答案 2 :(得分:0)

我假设你想要动态构建html ......一个(当然是最可维护的)解决方案是构建一个基于模板的系统。

从技术上讲,您可以在目录中维护html(例如电子邮件照片),从ASP.NET程序中读取模板,填写详细信息并将html邮件发送给用户。