我們希望將會話存儲在SQL Server中。我們有sessionState模式=「SQLServer」。我已經得到了如下所示的示例連接字符串。在這裏它有stateConnectionString和sqlConnectionString。SessionState stateConnectionString和sqlConnectionString
問題:爲什麼當mode =「SQLServer」時需要stateConnectionString?
<sessionState mode="SQLServer"
cookieless="false" timeout="20"
stateConnectionString="tcpip=XXX.XX.XXX.XXX:42424"
sqlConnectionString="data source=XXX-FFFF-sql2k8,2025;
Initial Catalog=AspState_XX_3_0;user id=XXX;password=XXX"
allowCustomSqlDatabase="true"
sqlCommandTimeout="1200"/>
注1:SQLServer模式存儲會話在SQL Server數據庫中的狀態。使用此模式可確保在重新啓動Web應用程序時保留會話狀態,並使Web會話中的多個Web服務器可以使用會話狀態。要使用SQLServer模式,您必須首先確保SQL Server上安裝了ASP.NET會話狀態數據庫。您可以使用aspnet_regsql.exe的工具
注2安裝ASP.NET會話狀態數據庫:在過程StateServer模式存儲會話狀態,被稱爲ASP.NET狀態服務,即從分開ASP .NET工作進程或IIS應用程序池。要使用StateServer模式,您必須首先確保用於會話存儲的服務器上正在運行ASP.NET狀態服務。要在Web場中使用StateServer模式,必須爲您的Web配置的machineKey元素指定相同的加密密鑰,作爲Web場的一部分的所有應用程序。