簡(jiǎn)單總結(jié)下asp.net狀態(tài)維持方法如下:
client端狀態(tài)
1、ViewState
2、ControlState
3、Hidden Field (post 模式)
4、Cookie
5、QueryString (get 模式)
server端狀態(tài)
1、Application (全局)
2、Cache (全局)
3、Session (current session,配合后臺(tái)驅(qū)動(dòng)可將session持續(xù)化到很多地方,如xml,
或者db、或者memcached 等地方)
4、配置文件(asp.net有一個(gè)sqlprofileProvider類使您可將配置文件數(shù)據(jù)保存到sql數(shù)據(jù)庫(kù)中)
5、db
對(duì)保持連接的c/s程序來(lái)說(shuō),client端狀態(tài)我們不是特別關(guān)心,除了cookie也有一些參考意義,其他幾種方法很難直接在普通cs程序里面對(duì)應(yīng),對(duì)server端程序開發(fā)來(lái)說(shuō),asp.net的server端數(shù)據(jù)持續(xù)方法對(duì)我們很有參考價(jià)值,對(duì)一般的游戲程序來(lái)說(shuō),db是必然會(huì)用的,配置文件型的也可參考使用,session型的很多程序都在使用,application型的緩存估計(jì)也有很多程序在用,更有價(jià)值的是cache型,我們一般的s程序基本都沒有實(shí)現(xiàn)時(shí)效性cache和文件觸發(fā)性cache,asp.net的cache對(duì)我們很有參考價(jià)值。當(dāng)然我們不必生搬硬套的照搬web上的概念,只要學(xué)到精髓就可以了,總之,還是我堅(jiān)持的那句話,俠義地說(shuō)是從web架構(gòu)學(xué)習(xí)server端程序設(shè)計(jì),更廣義地說(shuō)是從web架構(gòu)學(xué)習(xí)一般網(wǎng)絡(luò)應(yīng)用程序設(shè)計(jì)。