我遇到一个问题,即生产中的MVC4中的Bundling以某种方式捆绑了我在项目中不再拥有的旧版Bootstrap。
我更新了Bootstrap的版本,因为我想使用一些Glyphicons,而我的项目中的旧版本并不支持。
在调试或发布模式下本地运行,所有Glyphicons都按预期显示,但一旦部署到生产中(使用msbuild部署到Azure Web App),新的Glyphicons将丢失,并且缺少minified + bundled css文件对较新的Gyphicons的引用 - 它本质上是bootstrap.css的旧版本
这是我的RegisterBundles方法:
public static void RegisterBundles(BundleCollection bundles)
{
bundles.UseCdn = false;
// Clear out the list and add back the ones we want to ignore.
// Don't add back .debug.js.
bundles.IgnoreList.Clear();
bundles.IgnoreList.Ignore("*-vsdoc.js");
bundles.IgnoreList.Ignore("*intellisense.js");
bundles.Add(new StyleBundle("~/style/global").Include(
"~/Content/css/lib/bootstrap.css",
"~/Content/css/global.css"));
}
然后我正在使用......
@Styles.Render("~/style/global")
包含样式。
答案 0 :(得分:1)
使用ResetAll()
方法清除并重置。关于它的更多信息here。
答案 1 :(得分:1)
我有一个类似的问题,即使我从项目中删除了较旧的bootstrap.css文件,并且安装了ASP.NET MVC 5
,我的bootstrap.css (3.0)
应用程序仍在使用较旧版本的Bootstrap 3.3.7
NuGet包。当我运行应用程序并执行了#34;查看页面来源"从浏览器中,然后单击 " /Content/bootstrap.css" rel =" stylesheet" 链接, STILL 带来了旧的bootstrap.css文件内容。
我感到很困惑,并且被弄乱了一个多小时,直到我意识到css页面被缓存了。我认为这是因为当我点击" / Content / bootstrap.css" rel =" stylesheet" 链接以显示bootstrap.css
然后刷新页面,它更改为我的3.3.7版本。
无论如何,我决定发布此回复,因为它可能会帮助其他人了解问题可能是因为缓存。