【问题标题】:LESS files intermittently not being included in BundleLESS 文件间歇性地不包含在 Bundle 中
【发布时间】:2026-01-10 02:35:01
【问题描述】:

在我的 ASP.NET MVC5 项目中,我同时使用了 Bundling/Minificationdotless

var commonCss = new StyleBundle("~/bundles/main.css").Include(
                "~/CSS/global.css",
                "~/CSS/header.less",
                "~/CSS/footer.css"
                );

commonCss.Transforms.Clear();
commonCss.Transforms.Add(new LessTransform());
commonCss.Transforms.Add(new ConfigurableStyleTransform(cssSettings));

return commonCss;

LessTransform() 来自System.Web.Optimization.Less

我不时地看到 header.less 文件未包含在包中。有时会,有时不会,无需任何代码更改。

我通过验证器运行了 LESS 文件,没有发现任何问题。

我看到文件未包含在捆绑包中的唯一其他情况是找不到文件或存在语法问题。但是,这似乎不适用于此实例。

此文件未包含在捆绑包中的可能原因有哪些?

【问题讨论】:

  • 你解决过这个问题吗?我们也间歇性地看到这个问题。
  • @CharlesBoyung 不幸的是没有。我们切换到使用 VS Web Essentials 预编译为 CSS。公平地说,这实际上是一个更好的解决方案,因为每次请求 CSS 时都不会进行即时转换。

标签: asp.net asp.net-mvc bundling-and-minification dotless system.web.optimization


【解决方案1】:

您可能正在点击this bug in dotless。如果是这种情况,在它得到修复之前,您可以通过在 Web.config 的 dotless 部分中指定 disableParameters="true" 来绕过它。

【讨论】: