有些浏览器会缓存js和css文件,除非你强制它们,否则无法刷新它们.什么是最简单的方法.
我刚刚实现了这个似乎有用的解决方案.
在页面上声明一个版本变量
public string version { get; set; }
Run Code Online (Sandbox Code Playgroud)
从web.config键获取版本号
version = ConfigurationManager.AppSettings["versionNumber"];
Run Code Online (Sandbox Code Playgroud)
在您的aspx页面中调用javascript和样式表就像这样
<script src="scripts/myjavascript.js?v=<%=version %>" type="text/javascript"></script>
<link href="styles/mystyle.css?v=<%=version %>" rel="stylesheet" type="text/css" />
Run Code Online (Sandbox Code Playgroud)
因此,如果您在web.config中将1.0设置为版本= 1.1,您的浏览器将下载最新文件,这有望为您和您的用户带来一些挫败感.
是否有其他解决方案更好,或者这会导致网站出现任何无法预料的问题?
我正在和别人的代码一起工作,所以我不知道整个画面,我甚至不知道MVC那么好,但问题在于......
在Site.Master中有一个
<%= Html.IncludeJs("ProductPartial")%>
Run Code Online (Sandbox Code Playgroud)
在最终加价中产生这条线
<script type="text/javascript" src="/Scripts/release/ProductPartial.js"></script>
Run Code Online (Sandbox Code Playgroud)
我在JS文件中做了一些更改,但旧版本显然是由浏览器缓存的,因此在用户刷新之前不会显示更改.通常的解决方法是在脚本源路径的末尾添加一个版本标记,但我不知道在这种情况下如何做到这一点.
有什么建议?