<sessionState> 項目
設定目前應用程式的工作階段狀態設定。
<configuration>
<system.web>
<sessionState>
<sessionStatemode="Off|InProc|StateServer|SQLServer"
cookieless="true|false"
timeout="number of minutes"
stateConnectionString="tcpip=server:port"
sqlConnectionString="sql connection string"
stateNetworkTimeout="number of seconds"/>
必要屬性
屬性 | 選項 | 說明 |
---|---|---|
mode | 指定儲存工作階段狀態的位置。 | |
Off | 指示不啟用工作階段狀態。 | |
InProc | 指示在本機儲存工作階段狀態。 | |
StateServer | 指示在遠端伺服器儲存工作階段狀態。 | |
SQLServer | 指示在 SQL Server 儲存工作階段狀態。 |
選擇性屬性
屬性 | 選項 | 說明 |
---|---|---|
cookieless | 指定是否應該使用不含 Cookie 的工作階段來識別用戶端工作階段。 | |
true | 指示應該使用不含 Cookie 的工作階段。 | |
false | 指示不應該使用不含 Cookie 的工作階段。預設為 false。 | |
timeout | 指定在棄置工作階段之前工作階段可閒置 (Idle) 的分鐘數。預設值是 20。 | |
stateConnectionString | 指定在遠端儲存工作階段狀態的伺服器名稱和連接埠。例如,「tcpip=127.0.0.1:42424」。當 mode 是 StateServer 時就需要這個屬性。 | |
sqlConnectionString | 指定 SQL Server 的連接字串。例如,「data source=localhost;Integrated Security=SSPI;Initial Catalog=northwind」。當 mode 是 SQLServer 時就需要這個屬性。 | |
stateNetworkTimeout | 在使用 StateServer 模式儲存工作階段狀態時,指定在放棄工作階段前,Web 伺服器和狀態伺服器之間的 TCP/IP 網路連接可以閒置多少秒。預設值是 10。 |
備註
使用 StateServer 模式
- 確定已在將儲存工作階段狀態資訊的遠端伺服器執行 ASP.NET 狀態服務。這項服務是用 ASP.NET 安裝的,而且根據預設會位於 <Drive>:\systemroot\Microsoft.NET\Framework\version\aspnet_state.exe。
- 在應用程式的 Web.config 檔案中,設定 mode=StateServer 和設定 stateConnectionString 屬性。例如,stateConnectionString="tcpip=dataserver:42424"。
使用 SQLServer 模式
- 在執行 SQL Server 且將會儲存工作階段狀態的電腦上,執行 InstallSqlState.sql (根據預設會安裝於 <Drive>:\systemroot\Microsoft.NET\Framework\version)。如此會建立稱為 ASPState 的資料庫,其中具有新的預存程序,且 ASPStateTempApplications 和 ASPStateTempSessions 資料表在 TempDB 資料庫中。
- 在應用程式的 Web.config 檔案中,設定 mode=SQLServer 和設定 sqlConnectionString 屬性。例如,sqlConnectionString="data source=localhost;Integrated Security=SSPI;Initial Catalog=northwind"。
範例
下列範例指定幾種工作階段狀態組態設定。
<configuration>
<system.web>
<sessionState mode="InProc"
cookieless="true"
timeout="20"/>
</sessionState>
</system.web>
</configuration>
需求
包含於:<system.web>
**Web 平台:**IIS 5.0、IIS 5.1、IIS 6.0
**組態檔:**Machine.config, Web.config
**組態區段處理常式:**System.Web.SessionState.SessionStateSectionHandler