HttpContext.Current.Session在Azure服务器

时间:2017-07-22 07:43:06

标签: asp.net-mvc azure-web-sites session-state

 public static WebUser LoggedUser
        {
            get
            {
                WebUser sessionValue = null;
                if (HttpContext.Current.Session["LoggedUser"] != null)
                {
                    sessionValue = (WebUser)HttpContext.Current.Session["LoggedUser"];
                }
                return sessionValue;
            }
            set
            {
                HttpContext.Current.Session["LoggedUser"] = value;
            }
        }

HttpContext.Current.Session在Azure服务器的路由中被清除,同样在IIS服务器中正常工作,但为什么不在Azure?

请帮我保持会话价值

1 个答案:

答案 0 :(得分:1)

  

HttpContext.Current.Session在Azure服务器的路由中被清除,在IIS服务器中工作正常但为什么不在Azure中工作?

我假设您使用Azure WebApp的多个实例。如果是这种情况,我们可以从天蓝色的official document得到答案。请尝试使用外部会话状态提供程序( Redis缓存服务 SQL Server会话状态提供程序)。

  

如果您的ASP.NET Web应用使用会话状态,则需要配置外部会话状态提供程序( Redis缓存服务 SQL Server会话状态提供程序)。如果您使用会话状态,并且不使用外部提供商,则您将仅限于您的网络应用的一个实例