最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ASP.NET中IsPostBack用法詳解

 更新時間:2014年07月22日 14:54:50   投稿:shichen2014  
這篇文章主要介紹了ASP.NET中IsPostBack用法,有助于讀者進一步理解IsPostBack用法并加以靈活應(yīng)用,需要的朋友可以參考下

本文針對ASP.NET中IsPostBack的用法進行了詳細的說明,有助于讀者更準確的掌握ASP.NET中IsPostBack的用法。

一、IsPostBack介紹:

Page.IsPostBack是一個標志:當前請求是否第一次打開調(diào)用方法為:Page.IsPostBack或者IsPostBack或者this.IsPostBack或者this.Page.IsPostBack,它們都等價。

1)當通過IE的地址欄等方式打開一個URL時是第一次打開, 當通過頁面的提交按鈕或能引起提交的按鈕以POST的方式提交的服務(wù)器時,頁面就不再是第一次打開了。(每點擊一次按鈕,都是一次加載)

2)IsPostBack只有在第一次打開的時候是false,其它時候都是true

3).Net判斷一個Page是否第一次打開的方法:Request.Form.Count>0

4)每次頁面Load的時候,根據(jù)需要把每次都要加載的代碼放在IsPostBack中,只需要加載一次的代碼放在if(!IsPostBack)中。

5)每次用戶回傳服務(wù)器任何信息的時候,都會引發(fā)isPostBack屬性用來判斷此用戶是否曾經(jīng)做過登陸或者其他事件。

二、關(guān)于IsPostBack的結(jié)論歸納:

對.Net的源代碼中相關(guān)的處理進行的分析得到如下的結(jié)論:

1)對于使用Server.Transfer進行遷移時遷移到的頁面其IsPostBack=false。

2)Post方式如果Request中沒有請求值,即Request.Form =null則IsPostBack=false;Get方式如果Request中沒有請求值,即Request.QueryString =null則IsPostBack=false。

3)如果QueryString或Form雖然有請求值,但是QueryString或Form中的Key沒“__VIEWSTATE”和“__EVENTTARGET”和“__VIEWSTATEFIELDCOUNT”,并且沒有鍵為“null”,值以“__VIEWSTATE”開頭并且也沒有值為“__EVENTTARGET”的鍵值對,則IsPostBack=false。

4)使用Response.Redirect方式向自畫面遷移時,此時IsPostBack=false。

5)發(fā)生跨頁提交(CrossPagePostBack),當訪問PreviousPage屬性的時候,對于源PageIsPostBack=true。

6)發(fā)生跨頁提交(CrossPagePostBack)時目標頁面是IsPostBack=false

7)使用Server.Execute遷移到的頁面其IsPostBack=false。

8)在Page運行期間其對應(yīng)的DLL被更新了并且Page的樹結(jié)構(gòu)發(fā)生過變化,這種情況下請求時IsPostBack=false。

結(jié)論總結(jié):
一般情況判斷Request中如果沒有請求值則IsPostBack=false。如果有請求值但是不包括“__VIEWSTATE”等一些特殊的鍵或值,則IsPostBack=false每次請求后.Net框架會將一些特殊的隱藏域“__VIEWSTATE”等返回給客戶端)。還有一些特殊的情形是上面的規(guī)則不能正確判斷的需要特殊處理的,這些情形包括Server.Transfer,Response.Redirect,CrossPagePostBack,Server.Execute,發(fā)生了頁面元素變化及重新編譯。

相關(guān)文章

最新評論

兴义市| 运城市| 通许县| 贡嘎县| 雷波县| 皋兰县| 丰顺县| 定陶县| 阿巴嘎旗| 峨边| 图木舒克市| 贵港市| 龙南县| 荣成市| 汤阴县| 石城县| 江山市| 东乡族自治县| 田阳县| 堆龙德庆县| 陆良县| 嘉义县| 康乐县| 沙洋县| 巴中市| 社旗县| 洪湖市| 晋中市| 乐至县| 稷山县| 浦东新区| 宣威市| 昌吉市| 永顺县| 邯郸县| 娱乐| 遵义县| 板桥市| 二手房| 临沂市| 衡山县|