获取WebClient下载的缓存数据的时代

时间:2012-12-17 21:23:54

标签: c# windows-phone-7

我在WP7应用程序中使用WebClient从我无法控制的服务器下载一些数据。数据似乎被系统缓存 - 一旦从服务器下载数据,缓存的副本将在之后提供一段时间。我对这种缓存行为没有任何问题(它实际上对我来说很理想),但我想向用户表明他们正在查看的数据可能已经过时。

我正在寻找一些属性或方法来为我提供下载和缓存数据的时间,以便我可以以“上次更新x分钟前”的形式显示一些文本。

我已经看过OpenReadCompletedEventHandler的参数,但我找不到任何与缓存数据的年龄有关的内容。有没有其他方法可以做到这一点,或者有没有办法检测数据的检索方式(从服务器或缓存中),以便我自己记录上次更新时间?

1 个答案:

答案 0 :(得分:0)

我最终通过向URL添加随机参数来绕过WebClient缓存,然后通过在隔离存储中存储数据来实现我自己的缓存系统来解决这个问题。这意味着我可以轻松跟踪上次从服务器检索数据的时间。如果我认为数据太旧,我可以从服务器触发下载,否则数据只是从内存或隔离存储中获取。