我在MVC BundleConfig文件中有一个非常奇怪的问题。在发布我的网站之前,我将BundleTable.EnableOptimizations设置为true,并等待我的css文件在发布后最小化。但是ScriptBundle中的一个文件被缩小了,而来自同一个ScriptBundle的另一个文件则没有。这就是我的意思:
我的BundleConfig代码:
bundles.Add(new StyleBundle("~/Content/css").Include(
"~/Content/bootstrap.css",
"~/Content/Site.css"));
BundleTable.EnableOptimizations = true;
在_Layout我有:
@Styles.Render("~/Content/css")
因此,这个代码的结果是,当我在浏览器中检查网站的源代码时,有一个css文件,其中我的bootstrap.css和Site.css文件被合并,但是bootstrap.css被缩小,并且Site.css不是。我只是想不通为什么系统不会缩小我的Site.css文件。
这是我遇到的最奇怪的问题,所以如果你知道发生了什么,请帮助我。
答案 0 :(得分:2)
您应该尝试以下代码
public static void RegisterBundles(BundleCollection bundles)
{
bundles.IgnoreList.Clear();
bundles.Add(new StyleBundle("~/Content/css").Include(
"~/Content/bootstrap.css",
"~/Content/Site.css"));
BundleTable.EnableOptimizations = true;
}
使用IgnoreList,您可以绕过任何未包含在bundle中的已缩小的css,因为已经缩小的mvc包将忽略它。 如果这不起作用,您需要验证您的CSS,您可以使用Web essentials来验证您的CSS。 希望这会有所帮助。