【问题标题】:HttpHandler expiration for PivotViewerPivotViewer 的 HttpHandler 过期
【发布时间】:2011-11-09 11:03:21
【问题描述】:

我一直试图让我的 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 有一个错误并且它忽略了缓存控制?

【问题讨论】:

    标签: c# silverlight pivotviewer


    【解决方案1】:

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

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

    我在一篇博文中有一个例子:Reloading a Collection in PivotViewer

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

    【讨论】:

    • 添加计数器时有效。我无法使用响应类使页面过期。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多