我刚将一个ASP.NET MVC 3项目迁移到MVC 4/.NET 4.0,并安装了NuGet包Microsoft.AspNet.Web.Optimization
以支持CSS和JavaScript的捆绑和缩小。我几乎已经捆绑/缩小工作,问题是这是总是启用。即使应用程序处于调试模式(如Web.config中配置),所有JavaScript包含的内容都会被缩小。正如你可以从下面的XML代码段看到,调试模式在Web.config中启用:ASP.NET MVC 4应用程序捆绑和缩小,为什么在调试模式下启用缩小?
<system.web>
<compilation debug="true" targetFramework="4.0">
...
</compilation>
...
</system.web>
我的包构造的摘录:
public class BundleConfig
{
public static void RegisterBundles(BundleCollection bundles)
{
...
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-1.*",
"~/Scripts/jquery.form.js",
"~/Scripts/jquery.format.js"));
bundles.Add(new StyleBundle("~/Content/css").Include(
"~/Content/Site.css"));
...
}
}
CSS/JavaScript的包括在HTML的渲染例如:
<link href="/content/css" rel="stylesheet" type="text/css">
<script src="/bundles/jquery" type="text/javascript"></script>
有没有人有任何线索,为什么缩小在我的情况下启用?我对这里失去的东西感到不知所措。为了排除故障,我创建了一个测试ASP.NET MVC 4互联网应用程序,并且可以验证CSS/JavaScript确实在而不是在此项目的调试模式下被缩小。
编辑:
在我_Layout.cshtml文件我呈现的样式/脚本是这样的:
@Styles.Render("content/css")
@Scripts.Render("bundles/jquery")
感谢浩,我意识到,我已经忘了前缀的束名称用“〜/”。
此问题可能有帮助。 [如何禁用ASP.NET MVC 4中的Javascript/CSS minification](http://stackoverflow.com/questions/9373071/how-to-disable-javascript-css-minification-in-asp-net-mvc-4? rq = 1) – jrummell 2012-08-14 12:49:39
@jrummell这个问题的答案似乎是无条件禁用缩小?我只想要标准的条件缩小工作。 – aknuds1 2012-08-14 14:11:08