Asp.net页面请求生命周期之谜

时间:2012-08-13 20:37:13

标签: asp.net

我有一个asp.net webforms aspx页面(预编码后面)。该页面在单击按钮时从SqlDataSource创建网格视图(在单击按钮之前,查询基于其他一些用户输入)。

如果我捕获按钮点击Fiddler中的http post请求,然后从Fiddler重新发送该请求,调试器将在Page_Load方法中断,但随后它将完全跳过button_onClick方法。我觉得这必须与某种方式的缓存有关,因为如果我修改该请求的一些用户输入,它仍将基于原始输入生成gridview。

如果这与缓存有关,那么为什么还会调用Page_Load方法呢?此外,为什么Fiddler发送的请求会使用最初从Chrome请求的缓存页面(我没想到会有像这样的共享缓存)。

显然,我在asp.net网页表单页面生命周期中遗漏了一些内容,所以有人可以解决一些问题吗?

-----编辑(添加按钮代码)----

<asp:Button ID="btnGo" runat="server" Text="Go" OnClick="btnGo_onClick" />

和处理程序:

protected void btnGo_onClick(object sender, EventArgs e)
{
    GridView1.DataSource = SqlDataSource1;
    GridView1.DataBind();
}

0 个答案:

没有答案