【问题标题】:ASP.NET static content always cachesASP.NET 静态内容始终缓存
【发布时间】:2016-08-13 18:11:39
【问题描述】:

我有一个使用 ASP.NET MVC 5 和 angular.js 的项目 最近(虽然我不确定何时)对我的 angular.js 视图的更改没有反映在浏览器中。 当我查看 Chrome 中的开发人员工具时,它表明它是直接从缓存中提取的。 Last-Modified 标头似乎已经有几天了,ASP.NET 服务器正在为 html 文件返回 304 Not Modified。

有没有人知道为什么我的静态内容(特别是 html 文件)被浏览器缓存,而 实际上发生了变化。

我尝试过的:

我已经像这样修改了 Web.config:

<system.webServer>
    ...
    <caching enabled="false" />
    <staticContent>
      <clientCache cacheControlMode="DisableCache"/>
    </staticContent>
</system.webServer>

但是,这似乎没有任何区别。 我还检查了文件系统是否正在识别我的更改;文件上的“修改日期”比服务器返回的“最后修改日期”要新得多。

【问题讨论】:

  • 因为它已经被你的浏览器缓存了,你可能需要在配置中禁用缓存之前清除浏览器的缓存。

标签: c# html angularjs asp.net-mvc-5


【解决方案1】:
Response.Cache.SetCacheability(HttpCacheability.NoCache);

在后面的代码上试试这个

【讨论】:

  • 前段时间我遇到了同样的问题,这对我来说确实有效。
  • 我没有任何代码隐藏... html 页面由 asp.net 直接提供。
  • 哎呀,我读错了。我以为你有一个传统的 as.net 应用程序
猜你喜欢
  • 2014-08-30
  • 2011-08-19
  • 1970-01-01
  • 2017-11-08
  • 2011-06-24
  • 2015-08-07
  • 2015-10-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多