最近,我的一个项目的本地拷贝完全失去了大部分样式。花了我一些时间才找到问题所在,因为大部分的样式都在一个文件中,其余的仅仅是一些像Kendo和jQuery UI这样的小事情。
其他的次要内容没有被添加到页面上。我认为另一个开发人员(很久没碰过这个项目)修改过样式,他仅测试Web API而不是UI,所以他可能搞砸了,但我找到了问题:只有site.css
文件被包含在捆绑包中,其他文件都没有。我甚至尝试重新排列在捆绑包中包含的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")