【发布时间】:2011-08-11 02:29:47
【问题描述】:
我的情况是这样的;用户选择他们希望打印的报告列表,一旦他们选择并单击 a 按钮,我将打开另一个页面,其中包含已准备好打印的所选报告。我正在使用会话变量将报告从一个页面传递到另一个页面。
第一次尝试时,它工作正常,第二次尝试时,它会打开包含先前选择的报告的报告窗口。我必须刷新页面以确保它加载了最新的选择。
有没有办法在每次使用会话时从会话中获取最新值?或者有没有更好的方法来解决这个问题。公开征求意见...
谢谢
C# Asp.net、IE&7 /IE 8
【问题讨论】:
-
这听起来像是我本月早些时候遇到的一个问题,浏览器正在返回缓存页面。在我的例子中,IE 中有一个设置被设置为不自动检查更新的内容。
-
很遗憾,我无法更改用户浏览器设置。
-
当第二页打开并将会话变量读入本地对象(我假设您不是直接使用会话)时,您是否会在完成后在第二页上销毁会话变量在这种情况下使用它?我假设您每次在显示第二页之前都将最新的选择重新写入会话,因此当第二页读取并销毁它时它永远不会存在。
-
是的,我确实为每个新选择重新编写会话...但我无法销毁会话,因为我在刷新页面时需要它,用户也可以打开第二页的多个实例,取决于他在第一页所做的选择.....
-
我确实想出了一个解决方案。使用 JS,我从第一页开始跟踪第二页。如果第二页已经打开,我刷新页面,否则我打开它。工作正常,但并非一直有效。但这根本不适用于 IE7,仅适用于 IE 8 .....还有其他建议吗?
标签: c# asp.net internet-explorer caching