【问题标题】:MVC application - how to take care of cachingMVC 应用程序 - 如何处理缓存
【发布时间】:2013-10-28 14:00:35
【问题描述】:

我有一个基于 MVC + C# 的应用程序,其中包含很多 js 文件、图像和 css,基本上是静态内容。它也在生产中运行。客户报告了一个问题,我们通过清除其计算机上的缓存提供了即时解决方案。在我看来,这不应该是理想的解决方案。 我们在 web.config 文件中提供了缓存,如下所示:

<staticContent>
  <clientCache cacheControlMaxAge="365.00:00:00" cacheControlMode="UseMaxAge" />
</staticContent>

这是一年,所以我该如何解决这种情况,如果有一个新的部署到生产,它的静态内容发生了变化,我如何确保缓存将被刷新。我们的产品部署通常每 2 个月进行一次。 处理这些缓存内容的最佳实践通常是什么? 我们也面临这个问题,当我们进行开发时,更改静态内容,然后我们的 QA 测试这些,他们没有发现更改,我们意识到我们必须清除缓存。

【问题讨论】:

    标签: c# asp.net-mvc caching web-config


    【解决方案1】:

    Bundling 用于jsCss。捆绑负责缓存。

    它会在 Bundle 的 url 中附加一些字符。

    如果 js 或 Css 文件有任何更改,它会更新附加的 url,因此浏览器会将这些文件作为新文件并重新加载。

    您可以将捆绑与 MVC3 和更高版本一起使用。

    参考this link

    【讨论】:

    • 看起来不错,有不少优点。我将 ASP.NET4 与 MVC3 一起使用,但从链接中它说它适用于 ASP.NET 4.5?此外,是否还有其他技术,仅用于缓存问题,如我的情况。我同意,这个捆绑的东西看起来很棒,我会尝试一下,但只是好奇,如果有其他方法可以解决缓存问题。
    • 您也可以使用 mvc3 捆绑,点击此链接edspencer.me.uk/2013/02/20/…
    • 谢谢 Chandan,我会检查是否可以提前完成。
    猜你喜欢
    • 2011-01-31
    • 2013-11-26
    • 2010-09-25
    • 1970-01-01
    • 2014-09-26
    • 2019-02-13
    • 1970-01-01
    相关资源
    最近更新 更多