本篇文章為大家展示了ASP.NET中PostBack和ViewState的區(qū)別是什么,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
為萬山等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及萬山網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為做網(wǎng)站、網(wǎng)站設(shè)計(jì)、萬山網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
ASP.NET中PostBack和ViewState
ASP.NET WebForm中的一般WEB控件在向 而不是在HTML頁面上靜態(tài)添加(或是在OnInit事件之前添加,不能加IsPostBack的判斷),這時,如果禁用ViewState,那么DropDownList的SelectedIndexChanged事件將不會被正常觸發(fā),并且DropDownList的Item項(xiàng)將會被清空。所以從這個角度來說,如果要使用PostBack,那么ViewState勢必不能被禁用。 除此之外,PostBack還有一些不足: 1)頁面在PostBack后,刷新頁面時會出現(xiàn)非常不好的用戶體驗(yàn)。 2)搜索引擎的不友好。 3)在編寫服務(wù)器端代碼時要特別的小心,特別是對IsPostBack的判斷。 盡管PostBack在WebForm的事件機(jī)制占有舉足輕重的地位,它出現(xiàn)極大的方便了我們以事件驅(qū)動方式來開發(fā)WEB應(yīng)用。從短期的入門應(yīng)用中確實(shí)有它重要的意義。但從現(xiàn)實(shí)出發(fā),還是必須得根據(jù)不同的應(yīng)用場合有先擇性的使用。在網(wǎng)站前臺型應(yīng)用中,應(yīng)該消滅一切可以消滅的PostBack。因?yàn)樽鰹榍芭_,它的作用就是展示還有查詢。而如果對查詢,分頁等操作使用PostBack的話,一方面搜索引擎的不友好,另一方面給大多數(shù)用戶帶來非常不好的用戶體驗(yàn),增加了整個頁面的請求時間。同時,它們所傳的參數(shù)又非常有限,這情況下就需要使用鏈接的方式來傳參。 對于應(yīng)用型的后臺開發(fā),由于在提交數(shù)據(jù)時可能會有比較多的表單數(shù)據(jù)。這時,這時結(jié)合DetailView或FormView,使用PostBack來提交數(shù)據(jù)又可以給我們帶來非常大的方便,這種情況下我們不禁用ViewState也沒有關(guān)系,ViewState并不會很大,而至于刷新的問題,我們可以使用UpdatePanel來幫助解決。但是如果對于瀏覽數(shù)據(jù)仍然是要特別注意,特別是有GridView的頁面進(jìn)行PostBack數(shù)據(jù)查詢,分頁時,盡量都能改成鏈接的方式來實(shí)現(xiàn)。 總體來說,PostBack的使用還是要特別注意,能少用就少用,但有時用它確實(shí)也會給我們帶來非常大的方便。對于應(yīng)用型的后臺開發(fā),如果使用EXT的話,那么就是可以完全摒棄WebForm,或MVC了。因?yàn)樗凶约阂徽淄暾拈_發(fā)流程,從目前來看,確實(shí)是一種全新的體驗(yàn)。 連續(xù)兩篇討論的PostBack和ViewState,可能結(jié)論都是偏向消極的。它們的存在有其重要意義的同時,難免會帶來一些負(fù)面影響,但這種影響的代價在很多情況下過大而導(dǎo)致大多數(shù)人的反唇相譏。在軟件工程中,衡量軟件的標(biāo)準(zhǔn)不是越快越好,而是在用戶接受的合理的時間范疇內(nèi),得到正確的結(jié)果,并且它所花費(fèi)的代價(包括開發(fā),維護(hù),部署等成本)是最少的。我相信只要使用得當(dāng),它們還是可以充分發(fā)揮它們的作用的。 從極端的來說,去掉PostBack和ViewState后,WebForm仍然還是WebForm。它只是少了兩樣兩把利弊同樣明顯的雙刃劍,它余下的事件機(jī)制,組件化開發(fā),頁面模型仍然是我們進(jìn)行WebForm開發(fā)最有力的武器。 上述內(nèi)容就是ASP.NET中PostBack和ViewState的區(qū)別是什么,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)站題目:ASP.NET中PostBack和ViewState的區(qū)別是什么
本文來源:http://weahome.cn/article/pcsjdj.html