asp.net mvc3 razor, javascript

asp.net mvc3 razor, javascript

本文关键字:javascript razor mvc3 net asp      更新时间:2023-09-26

我用asp.net mvc3剃须刀创建了我的网页。当我释放客户时使用修改后的.js文件。客户端在重新加载或刷新页面之前无法获得修改后的更改。但我想找到一个解决方案,即不需要客户端每次都刷新页面以进行更新的更改。但我不想更改谷歌chrome中的设置(我们的网页使用谷歌chrome)。

我希望更改只出现在代码中。有人能给我建议解决办法吗。

在javascript文件的末尾放一个查询字符串。这将迫使浏览器重新加载javascript文件:

<script type="text/javascript" src="/path/to/script.js?version=2"></script>

每次重新部署js文件更改时,都会增加到版本=3、版本=4,依此类推。Chrome(和任何其他浏览器)会认为该文件已经更改,并在不使用缓存中的前一版本的情况下重新加载。

您应该查看Combres,它是一个NuGet包。这将组合您的javascript文件,缩小它们,并将其作为浏览器的单个文件。这一个文件的名称中有一个唯一的哈希,它可以绕过浏览器缓存(问题的根源)。

您所要做的就是使用NuGet安装包,然后在App_Data的combres.xml文件中列出您的JavaScript文件。它为你处理其他一切。

作为奖励,它也适用于CSS,合并和缩小你的文件将使你的网站加载更快。