日期:2014-05-18  浏览次数:20453 次

小弟对于if (!this.IsPostBack)一直很迷惑。
if   (!this.IsPostBack)
只知道是判断是不是第一次加载,
但到底什么算是第一次加载呢?
1.第一次打开页面算是第一次加载,那个在刷新一次。就不算第一次加载了?
2.点击一个页面以后。在点击这个页面的链接到另一个页面。然后在返回,算是第一次加载吗?
3.如果把判断用户是否登陆放在
if   (!this.IsPostBack)
里面。当页面第一次加载时。判断用户是否登陆。
那是不是登陆以后。不对页面进行操作了。当闲置20分钟以后session自动消失.那这个时候刷新页面。那是不是不能验证出是否已经登陆了?
希望各位前辈们解答


------解决方案--------------------
刷新和返回不算第一次加载
------解决方案--------------------
1、浏览器刷新算第一次加载
2、浏览器的返回按钮 是读取浏览历史记录,不是最新页面
3、用户登录超时后,session消失,也就是相当于用户退出登录
------解决方案--------------------
重点在于网业的Application
------解决方案--------------------
1.2 url数据重复的话不会在像远程服务器请求数据了.一般情况下.
3.没测试过
------解决方案--------------------
1.第一次打开页面算是第一次加载,那个在刷新一次。就不算第一次加载了?
==================================================>
刷新一次不一定不算是第一次加载。如果你页面中的数据没有提交,那么你刷新N多次,也是第一次加载。当你的页面中有数据提交(比方说有个Button,有Button_Click事件,你按一下Button,默认提交到本页),就不是第一次加载了。


2.点击一个页面以后。在点击这个页面的链接到另一个页面。然后在返回,算是第一次加载吗?
==================================>
是第一次加载


3.如果把判断用户是否登陆放在
if (!this.IsPostBack)
里面。当页面第一次加载时。判断用户是否登陆。
那是不是登陆以后。不对页面进行操作了。当闲置20分钟以后session自动消失.那这个时候刷新页面。那是不是不能验证出是否已经登陆了?
=======================================>
把判断用户是否登陆放在if (!this.IsPostBack)里面,如果在这个页面还有一个Button,那么用户按了这个按键,第二次加载页面的时候,就不会去执行登陆判断逻辑,就会使登陆无效,不管用户是否已经登陆。
这样的思路有问题
------解决方案--------------------
响应客户端回发才是重点...