模拟ASP.NET页面生命周期

时间:2011-03-22 18:44:46

标签: asp.net

我有一个HttpHandler,我想在其中为一些自定义控件呈现HTML。

目前我的代码如下:

Page p = new Page();
var customControl = new CustomControl { Data = data, Blah = blah };
p.Controls.Add(customControl );
context.Response.Write(customControl.RenderToString());

问题是customControl(及其子控件)需要在OnInit,OnLoad和OnPreRender方法中执行操作。

我尝试通过帮助方法手动调用此方法,但是我遇到了各种错误。我的一般问题是我需要在p变量上运行ASP.NET页面生命周期。有没有办法让它发挥作用?

2 个答案:

答案 0 :(得分:1)

我还没有来试试这个...... 适合我!

基于ScottGu的工作, jim建议 像这样的东西:

HttpContext.Current.Server.Execute(myPage, myTextWriter, false);

答案 1 :(得分:0)

不确定。而不是HttpHandler使用常规页面...

除此之外,改变你的控制有点不同。