我是一名超级初学者ASP.NET开发人员。我读到在每次提交时,请求参数都被填充到控件中,而不是读取“Response.Form []”参数,我可以从控件本身读取输入参数。
在魔法发生之前和之后,是否有任何可以捕获所有提交的事件? 服务器端的哪个方法被激活,执行这个魔术? 我可以覆盖它(为了好玩)吗?
谢谢, 罗尼
答案 0 :(得分:2)
我相信您正在讨论Viewstate的功能以及控件值的持久性。
这是一个diagram,它将显示ASP.NET的页面加载顺序
对于你,如果你想在加载viewstate之前查看,你可以在Page_Init方法内部工作。
答案 1 :(得分:0)
查看一些教程
http://aspalliance.com/quickstart/aspplus/
http://quickstart.developerfusion.co.uk/QuickStart/
在asp.net所有事件中,都会导致回发。所以,你可以在Page_Load中处理它们,但这是经典的方式。为了好玩,你可以尝试一下。
答案 2 :(得分:0)
ASP.NET将Request.Form
集合中的HTML输入字段值映射到服务器控件属性,例如Page.InitComplete
和Page.PreLoad
事件之间的TextBox.Text
,详见永远可以联系ASP.NET Page Life Cycle Overview。
实际映射发生在非虚拟私有方法Page.ProcessPostData
中,因此没有用于修改该进程的真正挂钩。 (您可以通过downloading Reflector查看此内容并查看Page.ProcessRequestMain
方法。)
如果要在映射之前或之后执行自定义处理,可以将处理程序添加到相应的事件中,或覆盖关联的虚拟方法(Page.OnInitComplete
和Page.OnPreLoad
)。