C# MVC会话SQLServer没有';不允许更新
我有一个相当基本的MVC4网站。我使用的SQL Server会话如下所示:C# MVC会话SQLServer没有';不允许更新,c#,asp.net,asp.net-mvc-4,session,C#,Asp.net,Asp.net Mvc 4,Session,我有一个相当基本的MVC4网站。我使用的SQL Server会话如下所示: <sessionState mode="SQLServer" regenerateExpiredSessionId="true" timeout="1440" sqlConnectionString="Password=pass; Persist Security Info=True; User ID=user; Data Source=server;" /> 这很好
<sessionState
mode="SQLServer" regenerateExpiredSessionId="true" timeout="1440"
sqlConnectionString="Password=pass; Persist Security Info=True; User ID=user; Data Source=server;"
/>
这很好,当我尝试向会话添加新项目或更新现有值时,会出现问题,即:
Session["test"] = 4;
Session["faux"] = 8;
在调试过程中,初始的“test”
值从未更新,而“faux”
值从未添加。不会引发错误,如果我进入/跳过更新/添加代码,会话看起来像是正在更新,但是如果我进入另一个函数并尝试查询会话,则会话中只存在原始值
我按照以下说明进行操作:,这些表将显示在我的服务器上
我不知所措。为什么我能够创建一个会话,但从不在该会话中更新/添加值 问题是,在一个控制器中,我设置了
[SessionState(SessionStateBehavior.Required)]
(正常工作的控制器),而在另一个控制器中(工作不正常的控制器),我设置了[SessionState(SessionStateBehavior.ReadOnly)]
,这就是我的会话项从未更新的原因。当我的会话状态为InProc时,这不是问题
我保留这个问题,以防其他人犯下和我一样的错误 由于我无法在本地复制该问题,并且下面的答案无效,因此我将删除该答案。这很奇怪。ASPState DB设置中可能存在问题。
Session["test"] = 4;
Session["faux"] = 8;