【问题标题】:CSS bundling in ASP.NET does not include minified version in productionASP.NET 中的 CSS 捆绑不包括生产中的缩小版本
【发布时间】:2018-11-07 16:46:17
【问题描述】:

我有一个 MVC 5 应用程序。

我在 _Layout.cshtml 中有这段代码

<head>
   ......
   @Styles.Render("~/Content/estilos")

   @RenderSection("styles", required: false)
</head>

我在视图中有这个其他代码:

@section styles
{
    @Styles.Render("~/Content/dataTables")
}

另一方面,我在 BundleConfig.cs 文件中有这个:

bundles.Add(new StyleBundle("~/Content/estilos").Include(
                      "~/Content/style.css",
                      "~/Content/site.css"));
bundles.Add(new StyleBundle("~/Content/dataTables").Include(
                      "~/Content/DataTables/css/dataTables.bootstrap4.css",
                      "~/Content/DataTables/css/fixedColumns.bootstrap4.css"));

关于文件,这些是存在的:

~/Content/site,css
~/Content/style.css
~/Content/DataTables/css/dataTables.bootstrap4.css
~/Content/DataTables/css/dataTables.bootstrap4.min.css
~/Content/DataTables/css/fixedColumns.bootstrap4.css
~/Content/DataTables/css/fixedColumns.bootstrap4.min.css

当我部署网站,并在 web.config 中的“编译调试=假”目标框架=“4.7.2”设置中设置“调试=假”时,我意识到只有“estilos”包被加载。“dataTables " 捆绑包丢失。

当我设置“debug = true”时,所有的 CSS 文件都会被加载。

这里可能发生了什么?

问候 詹姆

【问题讨论】:

  • 最后..问题是因为包的名称与dataTable css所在的物理路径相同。

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


【解决方案1】:

您应该避免使用现有目录路径作为包名称(目录名称不区分大小写,如在 Windows 环境中)。只需使用不存在的物理目录路径的其他名称重命名,捆绑应该可以工作:

bundles.Add(new StyleBundle("~/Content/tables").Include(
                      "~/Content/DataTables/css/dataTables.bootstrap4.css",
                      "~/Content/DataTables/css/fixedColumns.bootstrap4.css"));

剃刀视图

@section styles
{
    @Styles.Render("~/Content/tables")
}

相关问题:

Proper bundling of DataTables in ASP.net MVC

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-27
    • 1970-01-01
    • 1970-01-01
    • 2018-06-21
    • 2012-12-31
    相关资源
    最近更新 更多