2009-10-29 59 views
4

我正在编写发送电子邮件(如邮件合并)的WinForms应用程序。在WinForms应用程序中编译ASPX

我想使用ASP.Net的渲染引擎来呈现邮件的HTML正文。

在没有整个ASP.Net运行时,获取单个ASPX页面的渲染输出的最简单方法是什么?

为了让事情变得更加困难,我宁愿在运行时编译ASPX,以便在不重建应用程序的情况下修改它。但是,这不是要求;如果太难了,我会放弃它。

+0

这不完全相同;其他问题是通过HTTP提供任意页面或在ASP.Net中运行。 – SLaks 2009-10-29 02:29:09

+0

通过渲染你的意思是用户类型的电子邮件你给它的HTML预览? – TheVillageIdiot 2009-10-29 03:00:13

+0

不;我的意思是将带有嵌入代码的ASPX渲染为可以通过电子邮件发送的字符串。我不需要在屏幕上实际渲染HTML。 – SLaks 2009-10-29 03:06:52

回答

0

您可能需要考虑使用像NVelocity这样的模板库。以这种方式使用WebForms渲染引擎有点矫枉过正,并且充其量也是骇人听闻。

顺便说一句:请记住,电子邮件中的HTML很糟糕。即使是最基本的CSS也被大多数电子邮件客户端忽略。如果你想要我的建议,KISS,并保存你的理智:如果你要自动化电子邮件,只发送纯文本。

+0

我们也使用ASPX处理纯文本电子邮件(不是来自胖客户端)。工作得很好,很容易使动态:)使用这种方法的另一个原因是很容易将ASPX交给设计人员,让他们把它放在服务器控件周围。通过这种方式,您不必花费时间来布局布局,而只需使用动态数据即可。 – 2009-10-29 04:50:38