首页 新闻 会员 周边 捐助

.netframework4.0 中 asp.net page_load事件在每次请求时被执行两遍的问题?

0
悬赏园豆:50 [已解决问题] 解决于 2014-02-25 09:49

vs2010直接新建一个asp.net webform页面,然后拖一个asp:button 控件。

单击按钮,跟踪调试发现page_load在每次请求都被执行两遍,第一遍ispostback为false,第二次为true.

这样就会导致!ispostback中的代码每次都被执行,这个会对性能影响的啊?

为什么会出现这样的问题,我以前都没发现,最近调试一个项目时实在找不到答案,所以就重开了个vs,新建一个页面,没想到也是这样。有办法解决这个问题吗?

问题补充:

  

我发现这两次page_load事件的执行过程中Session.SessionID值是不一样的,为什么会这样啊?

 

刚才发现只有我正在用的IE10会发生page_load执行两次的问题,firefox则正常。看来微软的产品已经自己不兼容自己的产品了。

 

但Session.SessionID为什么每次请求都会变呢?这会导致Session在程序中无法使用。

tmd, 发现这个问题竟然也只存在于IE中。

空明流光的主页 空明流光 | 初学一级 | 园豆:111
提问于:2014-02-25 08:56
< >
分享
最佳答案
0

tmd,竟然是IE的问题。

空明流光 | 初学一级 |园豆:111 | 2014-02-25 09:49
其他回答(2)
0

if (!Page.IsPostBack)
{
//你要执行的代码


}

收获园豆:25
木乌 | 园豆:1015 (小虾三级) | 2014-02-25 09:04

你到底有没有看懂我的问题呀,这是什么意思呀?

支持(0) 反对(0) 空明流光 | 园豆:111 (初学一级) | 2014-02-25 09:18
0

你检查下代码是不是有其他地方刷新页面了。

收获园豆:25
Rookier | 园豆:652 (小虾三级) | 2014-02-25 09:20

我直接新建的,根本就没有写代码呀?只是打了个断点

支持(0) 反对(0) 空明流光 | 园豆:111 (初学一级) | 2014-02-25 09:20
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册