首页 > 解决方案 > 使用 SessionStateBehavior.ReadOnly 时,会话变量在请求之间消失

问题描述

很奇怪的行为。

在我的控制器中,我添加了一个[SessionState(SessionStateBehavior.ReadOnly)]能够处理并行请求的属性。

添加属性后,我看到在请求之间我丢失了会话变量。我已经看到会话变量正在更新,但在此过程中丢失了。

我在几个生命周期事件中添加了一些调试日志:

Reqeust1:
Application_PreRequestHandlerExecute: Session.Count:0
Application_PostRequestHandlerExecute: Session.Count:3

Reqeust2
Application_PreRequestHandlerExecute: Session.Count:0
Application_PostRequestHandlerExecute: Session.Count:0

使用.NetFrameWork 4.5.2,Microsoft.AspNet.Mvc.5.2.3

标签: c#sessionasp.net-mvc-5.net-4.5

解决方案


推荐阅读