2010-12-21 104 views
3

在Windows Phone 7中打到WebClientHttpWebRequest的呼叫是否使用缓存系统,还是他们总是从网上拉?Windows Phone 7是否缓存Web请求?

此外,如果我使用<Image Source="http://www.images.com/someimage.jpg"/>做图像缓存或从应用程序加载的任何时候从网上拉动?

回答

3

HI詹姆,

的WebClient和HttpWebRequest的网址缓存获取相同的URL,但希望新的结果时,这会导致问题。一种解决方法是在查询字符串中设置唯一的东西。

图像没有缓存提示人们开发解决方案。

One-time Cached Images in Windows Phone 7 « Ben.geek.nz

+0

是的但请注意,缓存请求通过WebClient和HttpWebRequest可以通过使用适当的HTTP头文件来影响。 – 2010-12-22 09:11:18

0

如果您可以访问到服务器,那么你可以设置Cache-Control头。

也有在IIS7.5的方式来设置缓存控制静态文件:

我用“无缓存缓存控制”有很大的运气。

0

如果你想缓存你的应用程序中的图像我已经为你解决了。它是JetImageLoader,我创建它的应用程序,我们需要加载,缓存和显示大量的标志,图标等。

它可以用作绑定转换器,所以你甚至不应该改变你的代码!只需更新您的XAML!

请检查samples in repository,你会爱上它;)

特点:

  • 磁盘
  • 缓存在内存中
  • 完全异步
  • 可用缓存作为绑定转换器或从您的代码
  • 012编程
  • 完全开源,分叉并改进!

这里是例如:

<Image Source="{Binding ImageUrl, Converter={StaticResource MyAppJetImageLoaderConverter}}"/> 

P.S.对不起,我从其他问题复制我的答案,但在Windows Phone上的图像缓存是一个巨大的问题,我想分享我的解决方案,所以每个人都可以使用它并为开发人员社区提高