.ascx文件是如何缓存的?

时间:2011-01-28 15:01:20

标签: asp.net asp.net-ajax

我有一个asp.net项目,我加载了一个基本的aspx页面来显示给用户。然后我在ascx组件的结果中ajax并通过javascript中的innerHTML注入它。

我注意到ascx组件在第一页加载时缓慢加载,但此后立即加载。这真的很酷,但我不明白如何缓存它,因为内容是通过进行几次db调用生成的。

服务器是否发送某种哈希来比较内容,以查看它是否在服务器上发生了变化?这是浏览器还是asp.net的东西?

2 个答案:

答案 0 :(得分:1)

您遇到的最有可能是及时编译,与用户控件本身关系不大。

观看.net的性能监视器计数器。这将告诉你很多关于发生了什么。

答案 1 :(得分:0)

您可以使用Firebug / IE开发者控制台/等。确定响应代码?如果您可以检查标题,则应该能够看到指示缓存时间或上次修改日期的日期。我浏览了MS ASP.NET Ajax文档,但找不到任何对默认缓存时间或缓存修改的引用。

但是,jQuery的ajax function使用ifModified属性(根据文档)检查Last-Modified标头以确定它是否应该检索结果。我认为ASP.NET Ajax调用以类似的方式工作。对于您当前的项目,这可能并不谨慎,但jQuery使得设置缓存选项变得非常容易。