在mvc中进行绑定,为每个版本加载一组新的文件



我需要在我的Mvc项目中捆绑我的.js文件和lib文件,我正在寻找捆绑的版本号,因为当添加新版本或将构建推送到dev/testing/prod环境时,我的浏览器需要重新加载所有.js和.lib文件

ASP.NET MVC中的Bundling已经有了一个内置机制,可以根据本文档的"Bundle Caching"部分处理这些类型的缓存破坏场景:

只要捆绑包没有更改,ASP.NET应用程序就会使用此令牌请求AllMyScripts捆绑包。如果捆绑包更改时,ASP.NET优化框架将生成一个新的令牌,保证浏览器对捆绑包的请求将获得最新捆绑包。

此功能使用查询字符串中名为v的令牌来指示捆绑包的当前"版本",如下所示:

v=r0sLDicvP58AIXN_mc3QdyVvVj5euZNzdsa2N1PKvb81

这是特定构建的唯一标识符,只要捆绑包中没有任何更改,它就会继续使用它,否则就会生成一个新的标识符来"破坏"任何现有的缓存。

对于非发布版本

如果您需要在非发布版本中处理此问题,那么我相信您可以将EnableOptimizations属性设置为true以始终处理此问题:

BundleTable.EnableOptimizations = true;

最新更新