2011-06-15 23 views
0
存儲在SQL Server

可能重複:
Passing session data between ASP.NET Applications如何檢索會議在兩個不同的地點

我創建了兩個網站,WEBSITE1和WEBSITE2

在這兩個網站web.config有以下設置

<sessionState mode="SQLServer" sqlConnectionString="data source=localhost;user id=sa;password=<****>;"></sessionState> 

在WEBSITE1 default.aspx.cs,我有下面的代碼

Session["Test"] = "Test"; 
    Response.Redirect("http://localhost/WebSite2/default.aspx"); 

在網站2 default.aspx.cs,我有下面的代碼

Response.Write(Session["Test"]); 

但我不能夠檢索會話存儲

+3

會話是「每用戶/每會話(連接)」 - 您無法從另一個應用程序在一個應用程序中檢索一個用戶的會話。 – 2011-06-15 11:49:40

+0

已回答http://stackoverflow.com/questions/616046/passing-session-data-between-asp-net-applications – Chumillas 2011-06-15 11:55:46

+0

另請參閱:http://stackoverflow.com/questions/623551/can-you-share-會話變量之間的兩個淨2-0應用程序/ 628972#628972 - 忽略downvote和答案的第一句話。其餘的是一個很好的解釋。另請參閱Darin的答案。 – Kev 2011-10-02 12:29:03

回答

0

在您附加的連接字符串示例中,本地存儲會話在Web服務器上;它不會被存儲在用戶登錄的第一個上。

,我看到它,你必須根據自己的情況 1)你可以使用會話的負載均衡到每一個​​連接時或 2)在一個SQL存儲會話用戶發送到服務器1或服務器2的3個選項服務器和兩個Web服務器將能夠看到會話數據。 3)如果這對於加載平衡或正常運行時間的原因是不實際的,那麼在每個Web服務器上都會有一個服務,如果它在本地找不到會話詳細信息,則檢查另一個服務。

相關問題