【发布时间】:2014-05-15 22:05:13
【问题描述】:
我希望能够在生产环境中缩小/捆绑我的 javascript 文件,同时在本地调试时将它们取消缩小/取消捆绑;但是,VS2012 中的默认 WebForms 站点似乎不允许这样做。
重现我的问题的步骤:
- 创建一个新的“ASP.NET Web 窗体应用程序”(在我的例子中是 c#)
- 无需调试即可启动并在浏览器中查看资源
- 注意未缩小的 jquery/modernizr 文件,但捆绑/缩小了
MsAjaxJS和WebFormsJs
web.config,默认有:
<compilation debug="true" targetFramework="4.5">
我什至尝试通过明确告诉BundleTable 不要优化来修改 Global.asax:
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
BundleTable.EnableOptimizations = false;
BundleConfig.RegisterBundles(BundleTable.Bundles);
AuthConfig.RegisterOpenAuth();
RouteConfig.RegisterRoutes(RouteTable.Routes);
}
然而,我仍然得到不可调试的 javascript 文件:
This site(我意识到这是用于 MVC)告诉我 web.config 中的 debug="true" 或 Global.asax 中的 BundleTable.EnableOptimizations = false; 应该关闭该功能。而this site,(是用于 WebForms 并且从第一个链接开始)没有提到将其关闭以进行调试。
我如何(干净地)告诉我的项目只在 debug="false" 时缩小/捆绑?
(我使用的是 ASP.NET 4.5)
编辑:
This question 和 this question 相似,但它们都只提供使用 Scripts.Render() 的解决方案。有没有办法通过使用 ScriptManager 的模板化方法来实现这一点?
【问题讨论】:
-
你找到答案了吗?我也面临同样的问题
-
你用 ScriptManager 解决过这个问题吗?
-
在下面查看我的答案。
-
您能在下面将我的答案标记为“答案”吗?我将不胜感激。 :)
标签: asp.net webforms bundle minify asp.net-optimization