.Net網(wǎng)站的web.config配置說明(3)_.Net教程
推薦:C#使用Panel實現(xiàn)窗體動態(tài)側邊欄可以實現(xiàn)側邊欄的展開、隱藏和鎖定的功能。添加的側邊欄默認是不顯示的通過鼠標的懸停事件MouseHover來觸發(fā)展開動作。側邊欄實際上是一個窗體或者是容器,實現(xiàn)展開的動作必須在一個時間段內(nèi)逐步的增加寬度,我采用Panel作為容器的載體,在一個線程中逐步增加Panel的Wid
在我們上面的Session模型簡介中,大家可以發(fā)現(xiàn)Session狀態(tài)應該存儲在兩個地方,分別是客戶端和服務器端�?蛻舳酥回撠煴4嫦鄳W(wǎng)站的SessionID,而其他的Session信息則保存在服務器端。在ASP中,客戶端的SessionID實際是以Cookie的形式存儲的。如果用戶在瀏覽器的設置中選擇了禁用Cookie,那末他也就無法享受Session的便利之處了,甚至造成不能訪問某些網(wǎng)站。為了解決以上問題,在 ASP.NET中客戶端的Session信息存儲方式分為:Cookie和Cookieless兩種。
ASP.NET中,默認狀態(tài)下,在客戶端還是使用Cookie存儲Session信息的。如果我們想在客戶端使用Cookieless的方式存儲Session信息的方法如下:
找到當前Web應用程序的根目錄,打開Web.Config文件,找到如下段落:
< sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
這段話中的cookieless="false"改為:cookieless="true",這樣,客戶端的Session信息就不再使用 Cookie存儲了,而是將其通過URL存儲。關閉當前的IE,打開一個新IE,重新訪問剛才的Web應用程序,就會看到類似下面的樣子:
其中,http://localhost/MyTestApplication/(ulqsek45heu3ic2a5zgdl245) /default.aspx中黑體標出的就是客戶端的Session ID。注意,這段信息是由IIS自動加上的,不會影響以前正常的連接。
ASP.NET中服務器端Session狀態(tài)的存儲 準備工作:
為了您能更好的體驗到實驗現(xiàn)象,您可以建立一個叫做SessionState.aspx的頁面,然后把以下這些代碼添加到< body>< /body>中。
< scriptrunat="server">
Sub Session_Add(sender As Object, e As EventArgs)
Session("MySession") = text1.Value
span1.InnerHtml = "Session data updated! < P>Your session contains: < font color=red>" & Session("MySession"). ToString() & "< /font>"
End Sub
Sub CheckSession(sender As Object, eAs EventArgs)
If (Session("MySession")Is Nothing) Then
span1.InnerHtml = "NOTHING, SESSION DATA LOST!"
Else
span1.InnerHtml = "Your session contains: < font color= red>" & Session("MySession").ToString() & "< /font>"
End If
End Sub
< /script>
< formrunat="server"id="Form2">
< inputid="text1"type="text"runat="server"name="text1">
< inputtype="submit"runat="server"OnServerClick="Session_Add"
value="Add to Session State " id="Submit1"name="Submit1">
< inputtype="submit"runat="server"OnServerClick="CheckSession"
value=" View Session State " id="Submit2"name="Submit2">
< /form>
< hrsize="1">
< fontsize="6">< spanid="span1"runat="server" />< /font>
這個SessionState.aspx的頁面可以用來測試在當前的服務器上是否丟失了Session信息。
將服務器Session信息存儲在進程中
讓我們來回到Web.config文件的剛才那段段落中:
< sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
當mode的值是InProc時,說明服務器正在使用這種模式。
分享:減少.NET應用程序內(nèi)存占用的一則實踐最近一周比較忙,主要的工作內(nèi)容是在做一個叫鍵盤精靈的東西,簡單來講就是將很多數(shù)據(jù)放到內(nèi)存中,對這些數(shù)據(jù)進行快速檢索,然后找出根據(jù)輸入條件最匹配的10條記錄并予以展示。具體和下面兩款炒股軟件的相關功能類似: 數(shù)據(jù)以文本形式存在文件中,且數(shù)據(jù)量較大,有近20
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實例(可帶附件)
- js實現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進度條的實現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現(xiàn)分頁示例代碼
- 相關鏈接:
- 教程說明:
.Net教程-.Net網(wǎng)站的web.config配置說明(3)
。