2013年3月27日

[Azure]Session State in Windows Azure (1) - 使用Azure SQL Database

在Windows Azure WebSites服務中需要Session State Server時,有幾個選擇:

  • 使用Azure SQL Database作為Session Server;原本在ASP.Net我們就可以使用SQL Server作為Session Server,SQL Azure Database作為SQL Database的子集,當然也可以用來儲存Session State。這個方式不管是使用WebSites服務或是Cloud Serivce服務都可以使用。

只不過,T-SQL的某些語法在Azure SQL DB是不支援的,並且我們也沒辦法用傳統的ASPNet_REGSQL在SQL Azure DB上建立Session DB,因此在建立Session DB的時候需要用別的方式。

首先下載這個檔案。裏面包含了兩個檔案:ASPStateInstall.sql與InstallSqlState.sql。

首先連線到我們的Azure SQL的Master db,並執行ASPStateInstall.sql來建立State DB。

image

然後連線到剛剛建立的ASPState資料庫,執行InstallSqlState.sql。

image

然後打開我們的ASP.Net專案,透過Nuget加入ASP.Net Universal Providers。

image

最後修改Web.config中的Session區段如下:

<sessionState mode="SQLServer"
sqlConnectionString="Server=tcp:&lt;SERVER>.database.windows.net;Database=ASPState;User ID=<USER>@<SERVER>;Password=<PASSWORD>;Trusted_Connection=False;Encrypt=True;"
cookieless="false" timeout="20" allowCustomSqlDatabase="true" />




這樣就完成以Azure SQL Database作為Session State的步驟了。

沒有留言:

Blog Archive

About Me