防止 MEF DeploymentCatalogs 提供过时的 xap 文件

发布于 2024-09-12 05:49:15 字数 301 浏览 5 评论 0原文

过去,我在使用旧版本 xap 文件的浏览器缓存时遇到了问题。 为了克服这个问题,我动态地将包含 xap 文件的上次修改日期的查询字符串参数添加到 aspx 页面中的 silverlight 源参数中。这保证了客户端将收到最新的 xap 文件,而不是缓存的过时版本。

我现在在 silverlight 应用程序中使用 MEF 中的 DeploymentCatalog 功能来下载一些 xap 文件。 有谁知道这在幕后是如何工作的? 它会使用浏览器缓存还是每次都会下载新内容? 如果它确实通过浏览器缓存,我如何防止提供过时的缓存版本? (如上所述)。

谢谢你!

In the past I had problems with the browser cache serving older versions of the xap file.
In order to overcome this I dynamically add a query string parameter containg the last modified date of the xap file to the silverlight source parameter in aspx page. This guarentees that clients will receive the latest xap file and not a cached stale versions.

I am now using the DeploymentCatalog functionallity in MEF in a silverlight app to download some xap files.
Does anyone know how this works under the hood?
Will it use the browser cache or does it download fresh everytime?
If it does go through the browser cache, how can I prevent stale cached versions from being served? (as described above).

Thank you!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不如归去 2024-09-19 05:49:15

DeploymentCatalog 仅使用 WebClient 类下载 xap。是否缓存取决于您的浏览器。从服务器端,您应该能够使用 HTTP Expires 标头来控制浏览器是否缓存文件。这是一个包含一些相关信息的问题:ASP.NET 应用程序中的浏览器缓存

The DeploymentCatalog just uses the WebClient class to download the xap. Whether it is cached will depend on your browser. From the server-side you should be able to control whether the browser caches the file by using the HTTP Expires header. Here is a question with some information about this: Browser Caching in ASP.NET application

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文