.NET中的CSS Bundle不会合并文件,但会重建文件列表

时间:2015-07-16 00:31:08

标签: c# asp.net .net c#-4.0

我正在使用RegisterBundles捆绑我的CSS文件并将其从虚拟文件夹中提供服务。

我在RegisterBundles函数中有以下代码:

bundles.Add(new StyleBundle("~/Content/all/")
    .Include("~/foundation/css/normalize.css",new CssRewriteUrlTransform())
    .Include("~/foundation/css/foundation.min.css", new CssRewriteUrlTransform())
    .Include("~/foundation/icons/foundation-icons.css", new CssRewriteUrlTransform())
    .Include("~/Content/jquery.mCustomScrollbar.css", new CssRewriteUrlTransform())
   );

在我的页面中,我有以下代码:

<%= System.Web.Optimization.Styles.Render("~/Content/all/") %>

问题是我得到了所有css文件的列表,而不是一个到css的组合和缩小的虚拟路径。对于所有css文件,我需要CssRewriteUrlTransform以确保正确维护相对路径,因为它们存在于不同的文件夹中。

1 个答案:

答案 0 :(得分:2)

为了允许Bundled和Minified工作,您应该执行以下操作之一:

  1. 将编译更改为web.config
  2. 中的debug="false"
    <system.web>
        <compilation debug="false" />
    </system.web>
    
    1. RegisterBundles的同一文件中,添加以下行
    2. BundleTable.EnableOptimizations = true;