asp.net-mvc – ASP.Net MVC风格包不包括大多数文件

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – ASP.Net MVC风格包不包括大多数文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
最近,我的一个项目的本地副本完全失去了大部分的造型。让我一段时间来弄清楚,因为大部分的造型都是在一个文件中完成的,其余的就是像Kendo和jQuery UI这样的小事。

另一个,小的东西没有被添加页面。我认为这种风格已经被另一个开发人员修改了(一段时间没有触及这个项目),他们只是测试了Web API的东西,而不是UI,所以他可能会破坏它,而且从未知道过,但是我跟踪了这​​个问题:只有site.css文件被包含在bundle中,没有其他的。我甚至尝试重新排列包含在包中的CSS文件的顺序,它只包括site.css。

我重建了项目,清理了缓存等,所以肯定看到了变化。我记得更新了一些NuGet软件包或VS软件包,或者最近甚至是MVC软件包?

我的问题是:发生了什么变化,这样做会发生吗?是什么原因造成的

编辑:来自BundleConfig.cs的代码

public static void RegisterBundles(BundleCollection bundles)
{
    bundles.Add(new StyleBundle("~/Content/css").Include(
            "~/Content/site.css","~/Content/themes/kendo/kendo.common.min.css","~/Content/themes/kendo/kendo.default.min.css","~/Content/themes/base/minified/jquery.ui.core.min.css","~/Content/themes/base/minified/jquery.ui.resizable.min.css","~/Content/themes/base/minified/jquery.ui.selectable.min.css","~/Content/themes/base/minified/jquery.ui.accordion.min.css","~/Content/themes/base/minified/jquery.ui.autocomplete.min.css","~/Content/themes/base/minified/jquery.ui.button.min.css","~/Content/themes/base/minified/jquery.ui.dialog.min.css","~/Content/themes/base/minified/jquery.ui.slider.min.css","~/Content/themes/base/minified/jquery.ui.tabs.min.css","~/Content/themes/base/minified/jquery.ui.datepicker.min.css","~/Content/themes/base/minified/jquery.ui.progressbar.min.css","~/Content/themes/base/minified/jquery.ui.theme.min.css"));
}

来自_Layout.cshtml的代码

@Styles.Render("~/Content/themes/base/css","~/Content/css")

解决方法

默认情况下,名称以“.min.css”结尾的文件将仅包含在发布版本中。

推荐的捆绑包配置只包括非最小化的.css和.js文件,那么在发布版本中将自动选择.min版本(如果存在),即您的Web中的< compilation debug =“false”>的.config。

您可以通过清除并随后向BundleCollection.IgnoreList添加忽略规则来控制此行为。BundleConfig示例可能如下所示:

public static class BundleConfig
{
    public static void RegisterBundles(BundleCollection bundles)
    {
        ConfigureIgnoreList(bundles.IgnoreList);

        // Setup your bundles...
    }

    public static void ConfigureIgnoreList(IgnoreList ignoreList)
    {
        if (ignoreList == null) throw new ArgumentNullException("ignoreList");

        ignoreList.Clear(); // Clear the list,then add the new patterns.

        ignoreList.Ignore("*.intellisense.js");
        ignoreList.Ignore("*-vsdoc.js");
        ignoreList.Ignore("*.debug.js",OptimizationMode.WhenEnabled);
        // ignoreList.Ignore("*.min.js",OptimizationMode.WhenDisabled);
        ignoreList.Ignore("*.min.css",OptimizationMode.WhenDisabled);
    }
}

您还可以通过设置BundleTable.EnableOptimizations明确地启用/禁用优化。

原文链接:https://www.f2er.com/aspnet/252789.html

猜你在找的asp.Net相关文章