IsPostBack在ASP.NET中失败了吗?

时间:2013-02-21 14:48:08

标签: c# asp.net ispostback

我们为物流公司创建了一个ASP.NET 3.5应用程序,它允许客户输入交付/作业并将其输入系统。

系统中的核心页面是您可以想象的“添加作业”屏幕 - 当用户构建他们的工作时,我们会在会话中存储此信息。然后,当他们提交作业时,或者在Page_Load事件中,当请求不是回发时,会话就会为下一个作业做好准备。

我们遇到一小部分客户的问题,其中用户会话似乎在提交发生之前被擦除 - 用户已向我们保证他们不会尝试使用多个会话(即2个窗口的同页)。我们在该页面上清除了会话时记录了一些错误捕获,并且Page_Load事件中的“清除会话”似乎在点击提交前几秒触发。请注意,此页面上有很多autopostback控件。

是否有任何ASP.NET怪癖或浏览器怪癖,这意味着IsPostback属性将错误地错误?这是一个非常零星的问题,我们没有运气复制这个!

1 个答案:

答案 0 :(得分:0)

正如许多意见所述,会议是错误的解决方案。它可以通过很多东西重置(例如,应用程序池回收)。

您不应强迫用户不要使用不同的浏览器或标签,因此正确的选择是将数据移动到ViewState / Control状态。

如果出于某些奇怪的原因,您仍然需要在会话中保留数据,请考虑切换到持久会话存储(即使用sql Server)。