【发布时间】:2011-12-31 12:10:02
【问题描述】:
所以我遇到了这个奇怪的问题。当我在本地开发并在 Firefox 和 IE 中运行我的应用程序时,一切正常。
当我在我们的集成环境中运行这个应用程序时,Firefox 没有看到这个问题,但 IE 有。基本上发生的事情是,我们为用户提供了通过 AJAX 调用在数据库表中存储新行的选项。 AJAX 调用是通过 JQuery 进行的,由 C# 中的控制器吸收,然后将一些信息发送到 proc 并存储在 DB 表中。一旦发生这种情况,我们都可以验证这些数据是否确实已存储。
还有在应用程序中查看表的功能,该表基本上模仿了我们刚刚存储数据的表,也可以通过 proc 访问(select 而不是insert/update)。现在,当我们在插入新行后立即查看时,Firefox 会在 web 表上显示新行,但 IE 不会 - 即使两者都在本地工作,但只有 Firefox 在集成中工作 - 太奇怪了。
现在,如果用户插入新行,然后清除他的 IE 缓存,他可以在单击链接时看到新行出现。
所以我的问题是:
1) 我是否应该专注于可能在 JQuery 中使用的一种方式,以便在用户每次单击链接以查看存储的行时清除浏览器缓存?
2) 为什么这可以在本地 IE 中运行,但不能在集成服务器上运行?
3) 在 .NET 中我可以在服务器端做什么,比如我可以在控制器方法上设置的属性,这些方法都设置/查看这些行,将 IE 设置为忽略缓存或其他什么?
谢谢大家。
【问题讨论】:
标签: c# asp.net-mvc-2 caching jquery internet-explorer-9