C# 使用SQLServer会话模式时,会话数据将消失

C# 使用SQLServer会话模式时,会话数据将消失,c#,asp.net,session-state,C#,Asp.net,Session State,我对会话数据有一个非常奇怪的问题。使用InProc会话模式时不会出现问题。 事情就是这样发生的: 1. HttpContext.Current.Session[“testparam”]=“字符串值” 2.我在页面中检查此数据。卸载事件。数据仍然存在。 3.启动另一个请求后,我无法在页.OnInit中获取数据,尽管我没有删除它 其他事实: 日志中没有任何序列化错误。 会话数据库是使用此创建的。 IIS和ASP.NET开发服务器中都出现错误。 我尝试了SQLServer模式和AppFabric分布式

我对会话数据有一个非常奇怪的问题。使用InProc会话模式时不会出现问题。
事情就是这样发生的:
1. <代码>HttpContext.Current.Session[“testparam”]=“字符串值”
2.我在
页面中检查此数据。卸载
事件。数据仍然存在。
3.启动另一个请求后,我无法在
页.OnInit中获取数据,尽管我没有删除它

其他事实:
日志中没有任何序列化错误。
会话数据库是使用此创建的。
IIS和ASP.NET开发服务器中都出现错误。
我尝试了SQLServer模式和AppFabric分布式缓存模式


谢谢你的帮助,因为我没有主意了

检查第二页的页面指令中是否将EnableSessionState设置为false。如果设置为false,则不会在页面加载时从SQL中获取该值。然而,这在InProc模式下不会发生。

您可以发布错误吗。。以及为HttpContext.Current.Session变量分配Onload和onInit代码的代码可能会有所帮助..您是否有类似Global.asax page的代码..?没有任何错误,会话变量在第二个请求中设置为null(我在Session EntriesTable中查看)。我有global.asax,但我没有在其中设置会话变量值。我的错误。不知道怎么做,但我错过了输出窗口末尾明显的序列化异常。我想应用程序一直在工作,因为在回调期间发生异常。您是否尝试在Page_Load而不是init上获取数据?我没有在任何页面中使用EnableSessionState。