【问题标题】:CSS bundle is empty when EnableOptimizations is true当 EnableOptimizations 为 true 时 CSS 包为空
【发布时间】:2014-05-05 19:04:20
【问题描述】:

我正在创建一个样式包:

bundles.Add(new StyleBundle("~/content/bundled-styles.css").Include(
    "~/content/flexisel-style.css"));

...在我看来:

@Styles.Render("~/content/bundled-styles.css")

如果我在未启用优化的情况下查看我的页面(即BundleTable.EnableOptimizations = false;),那么一切正常。我的 .css 文件被添加到页面没有任何问题,它包含所有样式。

如果我设置 BundleTable.EnableOptimizations = true;(不更改 anything else)然后生成的 .css 包不包含任何样式。捆绑的 .css 文件与生成的令牌一起添加到页面中,但是当我从页面源单击 .css 文件时,它完全是空白的。然后我的页面显然没有任何样式呈现。

附加信息:

  • 我的内容文件夹中没有名为“bundled-styles.css”的文件或文件夹
  • 这是我要添加的唯一捆绑包。
  • 我没有收到任何错误(如 404)。 .css 文件只是空的。
  • 我正在使用 ASP.NET MVC 5。

【问题讨论】:

  • 尝试删除虚拟路径"~/content/bundled-styles.css""~/content/css"上的文件和扩展名
  • @Shoe 感谢您的建议,但没有运气。同样的问题。

标签: asp.net-mvc-5 bundling-and-minification


【解决方案1】:

我也遇到了这个问题。 似乎捆绑器不喜欢名称中的扩展名。一旦我删除了扩展,捆绑器就开始工作了。

您可以尝试执行以下操作。请注意,我在两个地方删除了 .css

删除 .css

bundles.Add(new StyleBundle("~/content/bundled-styles").Include(
    "~/content/flexisel-style.css"));

@Styles.Render("~/content/bundled-styles")

【讨论】:

  • 万一其他人也有这个问题,这发生在我身上,我的包名称以“/css”和“/js”结尾,而不是特别带有扩展名。将它们切换到“/styles”和“/scripts”,现在它们可以工作了。
【解决方案2】:

我被困在这个问题上很长时间了,我被以下东西困住了:

如果您用于捆绑包的密钥,在这种情况下 “~/scripts”,匹配包含在 捆绑包,则不会包含在内。为了解决这个问题,我更改了密钥 到“~/bundles/scripts”,现在一切都很开心。

致谢:https://samrueby.com/2015/03/05/asp-net-mvc-bundleconfig-scripts-returning-an-empty-response/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-22
    • 1970-01-01
    • 2016-02-29
    相关资源
    最近更新 更多