国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

化惡魔為天使,巧移ViewState至SqlServer

來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-09 07:24:41
文檔

化惡魔為天使,巧移ViewState至SqlServer

化惡魔為天使,巧移ViewState至SqlServer:(發(fā)文后記:還是說(shuō)清楚前提吧,本文只適用于當(dāng)不得已才使用ViewState的情況) ViewState 一直以來(lái)備受爭(zhēng)議,主要是因?yàn)樗纺[的體積,導(dǎo)致客戶的的回傳( PostBack )數(shù)據(jù)量很大,而其中真正有用的數(shù)據(jù)又很少,網(wǎng)絡(luò)帶寬被浪費(fèi)不說(shuō),用戶的體驗(yàn)也很差。 最近
推薦度:
導(dǎo)讀化惡魔為天使,巧移ViewState至SqlServer:(發(fā)文后記:還是說(shuō)清楚前提吧,本文只適用于當(dāng)不得已才使用ViewState的情況) ViewState 一直以來(lái)備受爭(zhēng)議,主要是因?yàn)樗纺[的體積,導(dǎo)致客戶的的回傳( PostBack )數(shù)據(jù)量很大,而其中真正有用的數(shù)據(jù)又很少,網(wǎng)絡(luò)帶寬被浪費(fèi)不說(shuō),用戶的體驗(yàn)也很差。 最近

(發(fā)文后記:還是說(shuō)清楚前提吧,本文只適用于當(dāng)不得已才使用ViewState的情況) ViewState 一直以來(lái)備受爭(zhēng)議,主要是因?yàn)樗纺[的體積,導(dǎo)致客戶的的回傳( PostBack )數(shù)據(jù)量很大,而其中真正有用的數(shù)據(jù)又很少,網(wǎng)絡(luò)帶寬被浪費(fèi)不說(shuō),用戶的體驗(yàn)也很差。 最近

(發(fā)文后記:還是說(shuō)清楚前提吧,本文只適用于當(dāng)不得已才使用ViewState的情況)
ViewState
一直以來(lái)備受爭(zhēng)議,主要是因?yàn)樗纺[的體積,導(dǎo)致客戶的的回傳(PostBack)數(shù)據(jù)量很大,而其中真正有用的數(shù)據(jù)又很少,網(wǎng)絡(luò)帶寬被浪費(fèi)不說(shuō),用戶的體驗(yàn)也很差。

最近項(xiàng)目中用到了TelerikRadGrid,使用服務(wù)器端綁定數(shù)據(jù)后頁(yè)面ViewState體積過(guò)大,而導(dǎo)致性能嚴(yán)重降低,便開(kāi)始找尋優(yōu)化方式,盡量將ViewState存在服務(wù)器端。

由于項(xiàng)目已開(kāi)發(fā)至中期,不可能做類似于取消ViewState或使用客戶端綁定之類的大規(guī)模改動(dòng)。

要想改動(dòng)量最小化,肯定不能影響原有ViewState的使用,那只能重寫(xiě)Page類的LoadPageStateFromPersistenceMedium()SavePageStateToPersistenceMedium(object state)的方法,在這兩個(gè)Override的方法中把數(shù)據(jù)存在別的什么地方。

這時(shí)候就來(lái)問(wèn)題了,ViewState只是一個(gè)頁(yè)面的周期,每打開(kāi)一個(gè)頁(yè)面都會(huì)生成一個(gè)新的ViewState,連刷新都不例外,如果存在文件或數(shù)據(jù)庫(kù)中,這些數(shù)據(jù)累積起來(lái)可不是開(kāi)玩笑的,而且也用不上了,那還不得要寫(xiě)過(guò)期刪除的方法么?太麻煩了。這時(shí)候,Session就發(fā)揮大作用了,Session的生命周期長(zhǎng)于ViewState,過(guò)期會(huì)自動(dòng)刪除,而且還是存在服務(wù)器端的,不會(huì)增加數(shù)據(jù)傳輸量,看來(lái)很合適。

代碼如下:

Code
public class AmoPage: System.Web.UI.Page
{
#region === Move View State To Session ===

private string _pageGuid = null;
public string PageGUID
{
get
{
if (_pageGuid == null)
_pageGuid = this.Request.Form["__AmoViewState"];
if (_pageGuid == null)
_pageGuid = Guid.NewGuid().ToString();
return _pageGuid;
}
set { _pageGuid = value; }
}

protected override object LoadPageStateFromPersistenceMedium()
{
return Session[this.PageGUID];
}

protected override void SavePageStateToPersistenceMedium(object state)
{
RegisterHiddenField("__AmoViewState", this.PageGUID);
Session[this.PageGUID] = state;
}

#endregion
}


但是不能忽略一個(gè)問(wèn)題,Session默認(rèn)是由WebServer 管理的,一般只用于存儲(chǔ)會(huì)話中用戶登錄信息這種數(shù)據(jù)量極小的情況,如果直接把ViewState這個(gè)大胖子塞進(jìn)去,全部是保存在內(nèi)存中的,無(wú)疑用不了多長(zhǎng)時(shí)間,WebServer就會(huì)因?yàn)?font face="Calibri">Session數(shù)據(jù)量過(guò)大而崩潰。看來(lái)我們還需要轉(zhuǎn)移Session

正好,ASP.NET支持自定義會(huì)話管理的方式:

開(kāi)始-> All Programs-> Microsoft Visual Studio 2008->Visual Studio Tools->Visual Studio 2008 Command Prompt

進(jìn)入VS命令行模式。

執(zhí)行 aspnet_regsql –S (192.168.19.250) –U sa –P 123 –ssadd

這是指使用用戶名sa 密碼123登錄到SQLServer服務(wù)器192.168.19.250上添加狀態(tài)管理相關(guān)的數(shù)據(jù)庫(kù)。其實(shí)它是建立了一個(gè)只有出口存儲(chǔ)過(guò)程的數(shù)據(jù)庫(kù)ASPState,并在系統(tǒng)數(shù)據(jù)庫(kù)tempdb中加入了兩張分別用于存儲(chǔ)Application Session的表。

這時(shí)候我們就完成了狀態(tài)管理相關(guān)的數(shù)據(jù)庫(kù)的創(chuàng)建,然后只要在 Web.config中做如下設(shè)置即可





這時(shí)候,該Web應(yīng)用的Session數(shù)據(jù)就會(huì)存儲(chǔ)于數(shù)據(jù)庫(kù)中。

在使用的時(shí)候,只要將原有的頁(yè)面都從AmoPage類繼承就行。

至于效果,試過(guò)就知道!
使用前:(很熟悉吧...)

使用后:(干凈,清透,沒(méi)問(wèn)題!)

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

化惡魔為天使,巧移ViewState至SqlServer

化惡魔為天使,巧移ViewState至SqlServer:(發(fā)文后記:還是說(shuō)清楚前提吧,本文只適用于當(dāng)不得已才使用ViewState的情況) ViewState 一直以來(lái)備受爭(zhēng)議,主要是因?yàn)樗纺[的體積,導(dǎo)致客戶的的回傳( PostBack )數(shù)據(jù)量很大,而其中真正有用的數(shù)據(jù)又很少,網(wǎng)絡(luò)帶寬被浪費(fèi)不說(shuō),用戶的體驗(yàn)也很差。 最近
推薦度:
標(biāo)簽: 發(fā) sql 惡魔
  • 熱門(mén)焦點(diǎn)

最新推薦

猜你喜歡

熱門(mén)推薦

專題
Top
主站蜘蛛池模板: 国产精品一区二区三区高清在线 | 亚洲国产精品一区二区久久 | 国产成人精品一区二区 | 国产精品成人第一区 | 国产综合精品久久久久成人影 | 在线观看欧美 | 中文字幕第7页 | 国产精品一区二区av | 国产毛片一区二区三区精品 | 日本伊人久久 | 国产欧美日韩第一页 | www.亚洲欧美 | 亚洲精品第一综合99久久 | 亚洲第一导航 | 婷婷伊人| 亚洲视频网站在线观看 | 日产精品一区二区三区免费 | 国产日韩一区二区三区在线播放 | 成人精品视频在线观看完整版 | 日韩免费在线观看视频 | 高清国产一区二区三区 | 亚洲欧洲精品成人久久曰影片 | 特级全黄一级毛片视频 | 六月丁香在线观看 | 日韩欧美在线观看 | 久久精品一区二区国产 | 日韩欧美91 | 国产成人亚洲综合 | 四虎影视最新网址 | 999国产精品999久久久久久 | 日韩一区二区三区精品 | 在线播放五十路乱中文 | 91久久国产综合精品女同国语 | 亚洲一区中文字幕在线观看 | 久久er99热精品一区二区 | 欧美极品第1页专区 | 日韩欧美亚洲综合 | 亚洲视频免费观看 | 日本成本人观看免费fc2 | 亚洲欧美日韩另类在线专区 | 亚洲精品日韩中文字幕久久久 |