【问题标题】:Asset versioning in ASP.NET MVC 5 with BundleTransformer带有 BundleTransformer 的 ASP.NET MVC 5 中的资产版本控制
【发布时间】:2014-09-01 18:40:46
【问题描述】:

我正在使用BundleTransformer 来组合和优化我们的项目JavaScriptLESSCSS 文件。

在其他项目和库中,通常将组合文件的哈希附加到 URL 中,该资产嵌入在 HTML 代码中,以强制浏览器在其中一个源文件具有时立即下载文件的新版本改变了。

我一直在为 BundleTransformer 包寻找类似的解决方案,但没有找到任何关于版本控制的信息(也尝试过缓存清除等)。

由于这个包目前有超过 100k 的下载量,我想知道其他人是如何解决这个问题的?真的没有内置方法可以将某种版本控制后缀附加到资产 URL 吗?

我还通过手动将构建版本添加到我们所有的资产中偶然发现了this solution - 我仍然想知道是否有更优雅的解决方案来解决这个问题? (同样这种方法很可能会强制浏览器重新下载更改过的文件,例如像jQuery这样的库)

【问题讨论】:

    标签: asp.net-mvc bundletransformer


    【解决方案1】:

    很可能,您的 Web 应用程序正在调试模式下运行。

    尝试通过编辑Web.config文件将其切换到发布模式:

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
        …
        <system.web>
            <compilation debug="false" … />
        </system.web>
        …
    </configuration>
    

    或在/App_Start/BundleConfig.cs 文件中添加以下行:

    BundleTable.EnableOptimizations = true;
    

    【讨论】:

    • 谢谢,正是我需要的
    猜你喜欢
    • 2017-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-08
    • 2015-10-28
    • 2010-11-03
    • 2021-08-21
    • 1970-01-01
    相关资源
    最近更新 更多