在另一个页面中呈现一个aspx页面

kor*_*lan 9 c# asp.net rendering

在我的Web项目的业务对象编辑器页面中,我在对象插入或更新后向管理员发送通知电子邮件.但是,我想发送另一个aspx页面(Notification.aspx)的html输出而不是发送纯文本邮件,我只是为此目的而准备.

首先我想,我可以创建一个Notification.aspx的实例,然后使用它的RenderControl方法来获取输出.

但是,在Editor.aspx页面的代码隐藏中,我甚至无法达到Notification的创建新实例的引用.

我想知道在另一个页面中加载和呈现页面的最佳实践是什么...

谢谢.

Mar*_*nHN 25

您可以通过执行以下操作来呈现页面:

StringWriter _writer = new StringWriter();
HttpContext.Current.Server.Execute("MyPage.aspx", _writer);

string html = _writer.ToString();
Run Code Online (Sandbox Code Playgroud)