相关疑难解决方法(0)

使用ASP.NET会话状态服务跨应用程序共享会话

我正在尝试在两个Web应用程序之间共享会话,这两个Web应用程序都托管在同一台服 一个是.net 2.0 Web表单应用程序,另一个是.net 3.5 MVC2应用程序.

两个应用程序的会话都设置如下:

<sessionState
      mode="StateServer"
      stateConnectionString="tcpip=127.0.0.1:42424"
      />
Run Code Online (Sandbox Code Playgroud)

在webform应用程序中,我将会话密钥发布到MVC应用程序:

protected void LinkButton1_Click(object sender, EventArgs e)
{
    Session["myvariable"] = "dan"; 
    string sessionKey = HttpContext.Current.Session.SessionID;

    //Followed by some code that posts sessionKey to the other application    
}
Run Code Online (Sandbox Code Playgroud)

然后我在MVC应用程序中接收它并尝试使用相同的会话,如下所示:

[HttpPost]
public  void Recieve(string sessionKey )
{
    var manager = new SessionIDManager();

    bool redirected;
    bool IsAdded;

     manager.SaveSessionID(HttpContext.ApplicationInstance.Context, Id, out redirected, out IsAdded);
     var myVar = Session["myvariable"];

}
Run Code Online (Sandbox Code Playgroud)

密钥正在发布但会话似乎没有加载到MVC应用程序中,即sessionKey为null.可以做我想做的事吗?

c# asp.net asp.net-mvc session-state

48
推荐指数
2
解决办法
7万
查看次数

如何在ASP.NET中跨多个子域共享会话?

我有一个应用程序,在使用该应用程序的过程中,用户可能会点击

virginia.usa.com
Run Code Online (Sandbox Code Playgroud)

至

newyork.usa.com
Run Code Online (Sandbox Code Playgroud)

由于每次用户从一个子域跨越到另一个子域时我不想创建新会话,在多个子域之间共享会话信息的好方法是什么?

asp.net iis session

14
推荐指数
1
解决办法
2万
查看次数

使用SQL Server在两个ASP.NET应用程序之间共享会话状态

我正在开发一个网站,该网站要求在同一个域上的cms应用程序和在线商店应用程序之间共享会话,例如.

mydomain.com
Run Code Online (Sandbox Code Playgroud)

和

store.mydomain.com
Run Code Online (Sandbox Code Playgroud)

我已经取得了一些进展,它适用于我之间的本地构建

localhost/cms
Run Code Online (Sandbox Code Playgroud)

和

localhost/store
Run Code Online (Sandbox Code Playgroud)

基本上我已经完成了本文的建议

http://blogs.msdn.com/toddca/archive/2007/01/25/sharing-asp-net-session-state-across-applications.aspx

并攻击TempGetAppID存储过程以返回相同的应用程序ID(1).这似乎有效,因为它创建了像'abv5d2urx1asscfwuzw3wp4500000001'这样的ID,这是我所期望的.

我的问题是,当我将它部署到我们的测试环境时,它会在我在两个站点之间导航时创建一个新会话.因此,当我在cms网站上启动会话时,如果我导航到商店,它会创建一个新会话.这些在IIS7中设置为2个不同的网站.

在两个站点的web.config文件中,和元素都相同,如下所示(减去敏感信息)

有没有人知道为什么这可能不起作用?我正在两个站点共享表单身份验证,并且工作正常.任何帮助或想法将不胜感激!

非常感谢

戴夫

c# session-state multiple-domains asp.net-3.5

8
推荐指数
2
解决办法
1万
查看次数