当EnableOptimizations为true时,CSS包为空

时间:2014-05-05 19:04:20

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

我正在创建一个样式包:

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;(不更改任何其他),则生成的.css捆绑包不包含任何样式。捆绑的.css文件与生成的令牌一起添加到页面中,但是当我从页面源中单击.css文件时,它是完全空白的。然后,我的页面显然没有任何样式。

其他信息:

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

2 个答案:

答案 0 :(得分:5)

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

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

删除.css

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

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

答案 1 :(得分:3)

我被困在这很长一段时间了,我被以下人员困住了:

  

如果您使用的是您的捆绑密钥,在这种情况下   “〜/ scripts”,匹配包含在文件中的文件的虚拟路径   捆绑,然后它将不包括在内。为了解决这个问题,我更改了密钥   到“〜/ bundles / scripts”,现在一切都很开心。

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