我有一个ASP.NET MVC 5应用程序,当我在HTML,CSS或Javascript中进行一些更新并将其部署在服务器中时,此应用程序包含HTML,CSS和Javascript文件,以查看更改,我必须清除缓存在本地PC中。
这是一个常见的问题,但我认为答案并不简单。
所以我想知道,我是否可以包括一个使用JavaScript方法刷新现有HTML,CSS和JS文件的功能。当应用程序加载时,获取HTML,CSS和JS文件作为新副本。这就像使用javascript清除浏览器中的缓存一样。
如果无法实现其他任何选择?
答案 0 :(得分:0)
由于您使用的是MVC 5,因此如果您使用捆绑和缩小功能,则可以自动为JS和CSS处理。
请求... 包含...的查询字符串对...。 查询字符串...的值令牌是唯一标识符 用于缓存。只要捆绑包不变,ASP.NET 应用程序将使用此令牌请求...捆绑包。如果 捆绑软件中的任何文件都会更改,ASP.NET优化框架 会生成一个新令牌,以确保浏览器请求 捆绑包将获取最新的捆绑包。
本质上,ASP.NET应用程序将为您处理JS和CSS的缓存。
您可以在MSDN的有关捆绑和缩小的文章中详细了解其工作原理和实现方式。
我不确定您缓存HTML的意思。如果您使用的是.cshtml文件,就我所知,默认情况下不应将其缓存。但是,您可以在控制器上指定将操作结果缓存多长时间,例如在this发布中:
您可以使用OutputCacheAttribute来控制服务器和/或浏览器 缓存控制器中的特定操作或所有操作。
如果您提供有关如何缓存HTML的详细信息,我也许可以提供更有用的答案。