如何跨两个不同的站点检索存储在sql server中的会话

时间:2011-06-15 11:45:48

标签: asp.net sql-server session

  

可能重复:
  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");

在website2 default.aspx.cs中,我有以下代码

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

但无法检索存储的会话

1 个答案:

答案 0 :(得分:0)

在附加的连接字符串示例中,您将本地会话存储在Web服务器上;它不会存储在用户登录的第一个上。

据我所知,根据您的具体情况,您有3种选择 1)您可以使用会话感知负载平衡在每次连接时将用户发送到服务器1或服务器2 2)将会话存储在单个sql server上,两个Web服务器都能看到会话数据。 3)如果这对于负载平衡或正常运行时间原因不合适,则在每个Web服务器上使用一个服务,如果它无法在本地找到会话详细信息,则检查另一个服务器。