20

I don't want to minify all the files I use in my ASP .NET MVC 4 solution. So for example I have this in my BundleConfig.cs:

bundles.Add(new StyleBundle("~/CSS/bootstrap").Include(
    "~/Content/Bootstrap/body.css",
    "~/Content/Bootstrap/bootstrap-responsive.css",
    "~/Content/Bootstrap/bootstrap-mvc-validation.css",
    "~/Content/Bootstrap/bootstrap-theme.css",
    "~/Content/Bootstrap/bootstrap.css"
    ));

...

And to minify it, of course I use:

BundleTable.EnableOptimizations = true;

So it works great.

But now, how could I minify all my files except one bundle? I have a problem with a bundle that removes some CSS classes and would like to not minify this one.

Any help would be greatly appreciated.

2
  • If you rename the file xxxxx.min.css does it still try minify it? Commented Jun 13, 2014 at 19:45
  • Thank you for your answer, but I prefer not to do this, when I update Bootstrap I don't want to have to move and rename files. Commented Jun 16, 2014 at 17:05

3 Answers 3

24

Use Transforms.Clear() to skip minification but keep the files bundled

//declare bundle
var bundle = new ScriptBundle("~/javascripts/ckEditor")
                .Include("~/Scripts/ckeditor/ckeditor.js")
                .Include("~/Scripts/ckeditor/config.js");

//skip transformation. Result is that files are only bundled, but not minified.
bundle.Transforms.Clear();

bundles.Add(bundle);

You also have to eliminate the .min.js files from the directory to prevent the substitution

Sign up to request clarification or add additional context in comments.

1 Comment

As noted in this question, just call Bundle instead of ScriptBundle
5

I had a similar issue. the solution is to disable and enable minification in the view. for instance

@{
    BundleTable.EnableOptimizations = false;
 }

@Styles.Render("~/layout")
@RenderSection("CSS", false)

@{
    BundleTable.EnableOptimizations = true;
}

2 Comments

Thread safety = 0. i.e. Page 1 renders some other bundle one page two is rendering layout. Result is page 1 will also get an unminified bundle.
Same comment as above: As noted in this question, just call Bundle instead of ScriptBundle
4

I don't know where the problem comes from but I tried to:

  • Just bundle, not minify. It doesn't work.

    bundles.Add(new Bundle("~/CSS/bootstrap").Include(
        "~/Content/Bootstrap/body.css",
        "~/Content/Bootstrap/bootstrap-responsive.css",
        "~/Content/Bootstrap/bootstrap-mvc-validation.css",
        "~/Content/Bootstrap/bootstrap-theme.css",
        "~/Content/Bootstrap/bootstrap.css"
        ));
    
  • Override UI errors. It works but it's just a temporary patch.

Finally, I decided to use standard CSS calls (and put some comments to explain why in the code):

<link rel="stylesheet" href="/Content/Bootstrap/body.css">
<link rel="stylesheet" href="/Content/Bootstrap/bootstrap-responsive.css">
<link rel="stylesheet" href="/Content/Bootstrap/bootstrap-mvc-validation.css">
<link rel="stylesheet" href="/Content/Bootstrap/bootstrap-theme.css">
<link rel="stylesheet" href="/Content/Bootstrap/bootstrap.css">

If you have a better idea, please let us know! :)

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.