亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

[ASP.NET]配置使用SQL Server保存會話狀態(tài)

系統(tǒng) 2633 0
原文: [ASP.NET]配置使用SQL Server保存會話狀態(tài)

  會話狀態(tài)是ASP.NET應(yīng)用程序狀態(tài)的其中一種,這種狀態(tài)的特點是以用戶為單位,每個會話對應(yīng)一個用戶,也就是說在該用戶的整個訪問過程,會話狀態(tài)保存的數(shù)據(jù)都會持續(xù)保存于服務(wù)器的介質(zhì)中,直到會話超時(即用戶超過指定時間沒有存取會話數(shù)據(jù))。在服務(wù)器端保存會話狀態(tài)的方式有幾種,分別為:

?
1) InProc ——這種方式會話狀態(tài)保存在ASP.NET運行進程內(nèi),具體位置就是ASP.NET的Cache(高速緩存)內(nèi)。
2) StateServer ——這種方式會話狀態(tài)保存在ASP.NET所帶有的Wiindows服務(wù)進程中,該服務(wù)默認是禁用的,需要人手啟動。
3) SQL Server ——這種方式會話狀態(tài)保存到SQL Server所管理的數(shù)據(jù)庫中。具體又可以分為保存在臨時數(shù)據(jù)庫,ASPState數(shù)據(jù)庫和自定義數(shù)據(jù)庫三種方式。
4) 自定義提供程序 ——這種方式要求開發(fā)人員自己開發(fā)會話狀態(tài)的提供程序,會話狀態(tài)的存取方式完全由該提供程序決定,由此可以保存在其他SQL數(shù)據(jù)庫,或者XML文件,甚至文本文件中都可以。
?
本文目的在于說明怎樣配置使用SQL Server來保存會話狀態(tài)。
整個配置過程分為兩部分:
第一部分,在ASP.NET程序運行的服務(wù)器上,配置所使用的數(shù)據(jù)庫服務(wù)器。
第二部分,在ASP.NET程序的配置文件中修改會話狀態(tài)的保存方式。
?
配置所使用的數(shù)據(jù)庫服務(wù)器
1)運行aspnet_regsql.exe程序,該程序位于目錄C:\WINDOWS\Microsoft.NET\Framework\<ASP.NET版本號>下。首先雙擊運行該程序,為ASP.NET配置SQL Server。
[ASP.NET]配置使用SQL Server保存會話狀態(tài) 選擇“下一步”
[ASP.NET]配置使用SQL Server保存會話狀態(tài) 選擇按圖中所示進行選擇,然后“下一步”
[ASP.NET]配置使用SQL Server保存會話狀態(tài)
填入與ASP.NET關(guān)聯(lián)的數(shù)據(jù)庫服務(wù)器信息,注意這里選擇的數(shù)據(jù)庫,在往后的ASP.NET應(yīng)用程序中是可以改變的。填入完成之后選擇“下一步”
之后還有兩個界面,不過在那兩個界面中只需要“下一步”,沒有可選擇的信息,所以這里不列出來了。
?
2)配置會話狀態(tài)使用的數(shù)據(jù)庫庫。
正如剛才所說,使用數(shù)據(jù)庫保存會話也分三種方式,臨時數(shù)據(jù)庫(SQL Server重啟后會丟失數(shù)據(jù))、ASPState數(shù)據(jù)庫和自定義數(shù)據(jù)庫。
注意 -ssadd, -E, -sstype 指令。
??? -ssadd 指令的功能是添加會話數(shù)據(jù)庫,默認是添加到臨時數(shù)據(jù)庫
??? -E 指令的功能是使用WINDOWS身份驗證,因為我演示的SQL Server在本機上,所以使用該指令才能連接,單獨的 -ssadd是運行不了的。
??? -sstype ?指令的功能是指定會話狀態(tài)使用哪個數(shù)據(jù)庫。隨后的參數(shù)有 t、p'和c?,分別為臨時數(shù)據(jù)庫,ASPState數(shù)據(jù)庫庫和自定義數(shù)據(jù)庫。
??? -d 的功能是在指定自定義數(shù)據(jù)庫的時候,指定該數(shù)據(jù)庫的名稱,以數(shù)據(jù)庫名稱做參數(shù)。
?
使用臨時數(shù)據(jù)庫保存會話狀態(tài)的指令
[ASP.NET]配置使用SQL Server保存會話狀態(tài)
臨時數(shù)據(jù)庫中多了兩個用于保存會話狀態(tài)信息的表。
?
使用ASPState數(shù)據(jù)庫保存會話狀態(tài)的指令
[ASP.NET]配置使用SQL Server保存會話狀態(tài)
[ASP.NET]配置使用SQL Server保存會話狀態(tài) 執(zhí)行之后,在數(shù)據(jù)庫中出現(xiàn)了新的數(shù)據(jù)庫ASPState。其中帶有的表跟之前在臨時數(shù)據(jù)庫中的一致。
?
使用自定義數(shù)據(jù)庫TestCustom數(shù)據(jù)庫保存會話狀態(tài)的指令
[ASP.NET]配置使用SQL Server保存會話狀態(tài)
[ASP.NET]配置使用SQL Server保存會話狀態(tài)
除了擁有上述的表之外,還帶有一系列自動添加上去的存儲過程,其實這些存儲過程不是自定義數(shù)據(jù)庫才特有的。無論使用哪種數(shù)據(jù)庫,都會有這些存儲過程,只是當從一種數(shù)據(jù)庫改到另一種數(shù)據(jù)庫的時候,表會留下來,但存儲過程就會全部轉(zhuǎn)移到新使用的數(shù)據(jù)庫中。
?
想要取消使用以上的設(shè)置,只需要-ssremove -E指令。
[ASP.NET]配置使用SQL Server保存會話狀態(tài)
以上這些只能在本機的數(shù)據(jù)庫中創(chuàng)建會話數(shù)據(jù)庫,但正規(guī)的操作是不應(yīng)該在數(shù)據(jù)庫服務(wù)器上直接進行這些操作,很可能該服務(wù)器上根本沒有ASP.NET的組件。
因此我們需要從ASP.NET程序的部署服務(wù)器,通過遠程連接來進行配置,以下將演示這一實例,通過我的計算機連接到團隊成員的遠程計算機上。
?
要先說明,在CMD中運行aspnet_regsql.exe,要進行遠程連接,需要使用-S -U -P指令,分別指定:數(shù)據(jù)庫服務(wù)器名稱/地址、連接使用的帳號和密碼。
同時必須注明,要在SQL Server中配置會話數(shù)據(jù)庫,必須具有 創(chuàng)建表格,創(chuàng)建數(shù)據(jù)庫,創(chuàng)建存儲過程,和MSDB的RSExecRole角色權(quán)限 。否則配置過程一定會出錯。
[ASP.NET]配置使用SQL Server保存會話狀態(tài)
以上配置指令在 119.120.74.150的機器上,使用帳號密碼均為silin建立連接,然后創(chuàng)建一個自定義數(shù)據(jù)庫TestCustom來保存會話狀態(tài)。
?
以上就是關(guān)于ASP.NET使用SQL Server的配置。接下來是配置文件的修改。
?
修改ASP.NET程序的配置文件
?
在ASP.NET的配置文件中找到<sessionState>區(qū)段,很可能沒有這個區(qū)段,因為存在默認設(shè)置,這里假設(shè)沒有這個區(qū)段,重新寫入。
?
<sessionState mode="SQLServer" sqlConnectionString="所需連接字符串" /> 只需要這么簡單的設(shè)置。當然還有其他設(shè)置,但要起到作用,最少只需要這兩個屬性設(shè)置就OK了。
?
完成上述設(shè)置之后,在程序中的存取的會話數(shù)據(jù)就會自動保存到數(shù)據(jù)庫中,整個編碼過程沒有任何改動。ASP.NET的這個提供程序機制,的確把代碼實現(xiàn)跟數(shù)據(jù)保存方式分離了。不過要注意,當把會話狀態(tài)保存到ASP.NET運行進程以外的介質(zhì)時,必定會進行序列化和反序列化,因此必須注意會話狀態(tài)中保存的類型是否能夠進行序列化。

[ASP.NET]配置使用SQL Server保存會話狀態(tài)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产精品久久久久蜜芽 | 亚洲国产精品一区二区首页 | 午夜国产福利在线观看 | 国外成人免费视频 | 美女被a到爽视频在线观看 美女被cao的视频免费看 | 色综合久久夜色精品国产 | 久九色| 亚洲国产婷婷香蕉久久久久久 | 擼擼色在线看观看免费 | 成人日批视频 | 日韩欧美黄色大片 | 国产亚洲欧洲国产综合一区 | 日本一级毛片视频在线看 | 亚洲性片 | 欧美成人免费高清网站 | 欧美精品专区第1页 | 欧美大屁股精品毛片视频 | 国产亚洲精品第一区在线观看 | 五月综合激情久久婷婷 | 狠狠色综合久久婷婷 | 国产在线精品一区二区三区 | 曰本女人视频69xxx | 久久狠狠第一麻豆婷婷天天 | 欧美激情社区 | 狠狠影视 | 亚洲精品女同中文字幕在线 | 一级毛片一 | 国产精品九九久久精品女同 | 99热久久这里只有精品2010 | 久久精品加勒比中文字幕 | 色综合久久久久久久 | 色综合天天综合网亚洲影院 | 国产伦理一区二区三区 | 久久久日本精品一区二区三区 | 天天色天天射天天干 | 国产一及片| 色综合夜夜嗨亚洲一二区 | 九九看片 | 欧美性一区二区三区 | 在线视频免费国产成人 | 伊人久久在线观看 |