我正在存储一个会话变量,我用它作为参数传递给各种数据访问调用。此变量在首次创建会话时设置,用户可以根据他们有权访问的资源进行更改。例如,当用户第一次登录时,他们的默认会话值可能设置为“1”。在页面的右上角是他们可以访问的所有选项的下拉列表,更改此选项会更改会话变量... 1、2、3、4...等。
问题是由于以下原因之一,此会话变量可能会在回发之间发生变化:
- 会话超时,导致会话重新创建自己,默认值为 1
- 用户打开两个选项卡/浏览器窗口并在一个选项卡上更改它,然后切换回另一个使用“1”作为值呈现的页面
这会导致页面上的控件变得“陈旧”并且回发行为不正确。在其事件处理程序中依赖于会话变量的按钮单击事件可能不是“预期”事件,并且界面具有误导性。
我想要做的是确定会话变量的值是否在回发之间发生了变化,以及它是否已重定向回同一页面,导致它使用新的会话变量值重新呈现,并为用户提供清楚地表明每个回发实际上做了什么。
有任何想法吗?