我今天将一个大型项目升级到MVC4 RC,试用捆绑和缩小。
在我在部分视图中的脚本src标签中有8个静态js文件之前。样本页面一直在.1秒内运行。
我添加了这样一个包:
bundles.Add(New ScriptBundle("~/bundles/mybundle").Include(
"~/Resources/Core/Javascripts/jquery-1.7.1.min.js",
"~/Resources/Core/Javascripts/jquery-ui-1.8.16.min.js",
"~/Resources/Core/Javascripts/jquery.validate.min.js",
"~/Resources/Core/Javascripts/jquery.validate.unobtrusive.min.js",
"~/Resources/Core/Javascripts/jquery.unobtrusive-ajax.min.js",
"~/Resources/Core/Javascripts/bootstrap.min.js",
"~/Resources/Core/Javascripts/toolbar.js",
"~/Resources/Core/Javascripts/jquery-ui-timepicker-addon.js"))
在部分中我添加了这个,页面加载时间增加到0.5秒,编译调试为true和false。 @ Scripts.Render( “〜/捆绑/ mybundle”)
然后我用这样的miniprofiler包裹它:
Dim profiler = MiniProfiler.Current
Using profiler.Step("bundling")
@Scripts.Render("~/bundles/mybundle")
End Using
捆绑步骤始终需要.4秒。
计算机是在现代硬件上运行的VS2010,具有高端SSD驱动器,并且没有运行非标准后台任务。一旦删除@ scripts.render,页面加载时间就会再次下降到.1秒。
有没有办法让捆绑器缓存,或者我错过了让它变慢的东西?
答案 0 :(得分:8)
这是ASP.NET MVC 4 RC中捆绑的已知错误。捆绑不在服务器端缓存。
这里详细描述了这个bug: http://todd-carter.com/post/2012/06/10/mini-me-fication-in-system-web-optimization-rc-is-evil/
在截至2012年6月17日的一周内,应该对nuget MVC 4 RC软件包进行更新。(资料来源:https://twitter.com/howard_dierking/status/212725872904507392)