Firefox 4.0始终刷新Silverlight XAP文件

时间:2011-04-20 13:25:14

标签: asp.net silverlight caching firefox4 xap

我在使用新的FireFox 4.0版本时遇到了麻烦。

在我的网站中,我托管了一个名为Visualization的Silverlight对象。

在Firefox 3.6,Chrome,IE 7,8,9中,浏览器加载XAP文件一次,如果没有,则从缓存中获取,然后进行回发或重新进入网站。

在FF 4中,每次进入网站时都会重新加载XAP文件。

我尝试了很多并在网上搜索但不知道解决问题。

我的Silverlight对象具有:

<param name="enableCacheVisualization" value="true"/>

托管对象的网站具有Page Head

<%@ OutputCache Duration="600000" VaryByParam="none" %>

我在ClientBin文件夹中有一个自己的web.config:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <location path="Visualisation.xap">
    <system.webServer>
      <staticContent>
        <clientCache cacheControlCustom="public" cacheControlMode="UseMaxAge" cacheControlMaxAge="10.00:00:00" />
      </staticContent>
    </system.webServer>
  </location>
</configuration>

任何想法? 该站点在IIS7(Win 2008 Server)上运行,其中包含.Net 4.0和c#作为Backcode

希望提示

2 个答案:

答案 0 :(得分:1)

我在网络标签下使用firebug来查看您的网络服务器发送的缓存标头。你想看到类似的东西:Cache-Control:max-age = 31536000,也许是Etag。

在我认为的常见标题菜单下,IIS下的HTTP标题下有一个缓存设置。

您可能尝试使用的另一件事是MIME类型。它应该是“Content-Type:application / x-silverlight-app”

如果标题发送正确并且Firefox选择忽略它们,那么可能没有任何可以做的事情。

我实际上遇到了与Chrome相反的问题。 Chrome的缓存似乎非常激烈,我发现自己运行旧版本的.xaps。

答案 1 :(得分:1)

似乎firefox 4.0+只缓存5MB或更小的文件 See bug report