2012-02-21 116 views
1

我想在共享虛擬主機上的SQL Server 2008中存儲會話。我現在做了,直到爲:在共享虛擬主機上在SQL Server中存儲會話

  1. 運行「InstallPersistSqlState.sql」對數據庫
  2. 在命令行我做了這個腳本:aspnet_regsql -ssadd -sstype c -d SessionDb -sqlexportonly c:\SessionScript.sql(使用aspnet_regsq.exe)
  3. 運行SessionScript.sql對數據庫。

創建了兩個表(ASPStateTempApplicationsASPStateTempSessions)以及所有必需的存儲過程。

web.config文件看起來像這樣:試圖運行網站的時候終於

<sessionState 
      mode="SQLServer" 
      allowCustomSqlDatabase="true" 
      sqlConnectionString="server;Initial Catalog=db;User ID=usr;Password=pwd" 
      cookieless="false" timeout="20" /> 

我一收到此錯誤:

Unable to use SQL Server because ASP.NET version 2.0 Session State is not installed on the SQL server. Please install ASP.NET Session State SQL Server version 2.0 or above.

我查了無處不在互聯網上,但沒有找到任何解決方案,可以幫助我解決這個問題。

回答

1

您需要聯繫網絡主機 - 他們將需要爲您安裝ASPState(但我敢打賭他們不會這樣做)。您可能不得不使用InProc或其他解決方案。你有多個Web服務器,或只有一個?

+0

我只有一個,但不知何故會話是每隔幾個小時回收。 – baaroz 2012-02-21 16:29:23

+0

你也需要和你的網絡主機談談。 – 2012-02-21 16:29:54