2011-06-21 255 views
3

我正在爲ASP.Net會話狀態使用SQL Server。但是,我只能在運行時檢索連接字符串,因此無法將其存儲在web.config文件中。通常它會在:SQL會話狀態服務器動態連接字符串

<sessionState 
      mode="SQLServer" 
      sqlConnectionString="data source=127.0.0.1;user id=<username>;password=<strongpassword>" 
      cookieless="false" 
      timeout="20" 
    /> 

如何在運行時設置連接字符串? (即在網絡應用程序啓動後)。

回答

1

你看過嗎事件Global.asax?這似乎是設置類似的邏輯地點。

MSDN's documentation

請求在ASP.NET應用程序 所述第一資源(例如 作爲頁面)時調用。 Application_Start 方法僅在應用程序的生命週期的 期間被調用一次。您可以使用此方法執行啓動 任務,例如將數據加載到緩存中並初始化靜態值。

您應該在 應用程序啓動期間僅設置靜態數據。不要設置任何 實例數據,因爲它將是 僅對於創建的 HttpApplication類的第一個實例 可用。

+0

謝謝安倍 - 我知道在哪裏設置它我只是不知道要設置什麼。我同意Application_Start可能是設置它的最佳位置,只需知道要覆蓋的內容即可。 – Guy

1

我認爲你可以在System.Web.SessionState以內的某處設置該字符串,希望這會幫助你找到正確的位置。對不起,我不能給出更好的答案,我仍然試圖自己弄清楚。如果我這樣做,我會讓你知道的。 GL