0

我一直试图让我的 PivotViewer 实现缓存 HttpResponse 但没有成功。如何设置 Response 对象的过期时间?我一直在做以下事情。

           _HttpContext.Response.Expires = 0;
           _HttpContext.Response.ExpiresAbsolute = DateTime.Now.Subtract( new TimeSpan( 1, 0, 0, 0 ) );
           _HttpContext.Response.CacheControl = "no-cache";

问题是 - 显示我的 PivotViewer 的后续调用始终显示第一次调用的结果。我没有使用静态 CXML - 我正在使用 PivotServer 工具并动态创建它。

我想知道的是如何设置页面的到期时间,以便每个 Pivot View 请求创建一个 HttpResponse 或者 PivotViewer 有一个错误并且它忽略了缓存控制?

4

1 回答 1

1

我假设您正在对同一个 URL 进行多次 LoadCollection() 调用,并想知道为什么您没有刷新,对吗?如果不是这样,那我就误会了。

如果在 LoadCollection() 中传递的 Uri 字符串与之前的调用相同,则 PivotViewer 将不会进行新的调用。即使添加哈希标签也不会欺骗它。我不确定这是性能问题还是什么,但它就是这样。重新加载集合的唯一真正方法是更改​​ Uri。我通常通过添加/修改查询字符串计数器来做到这一点。

我在博客文章中有一个示例:在 PivotViewer 中重新加载集合

如果您有其他问题,请告诉我,我们可以帮您解决。

于 2011-11-09T03:03:21.440 回答