asp.net 4.5脚本捆绑也没有bundeling也没有缩小
发布时间:2020-12-16 03:22:52 所属栏目:asp.Net 来源:网络整理
导读:我将一个项目从asp.net 3.5升级到4.5,以便使用脚本捆绑和 javascript的缩小.现在我把它全部运行了,脚本都出现在我定义的包中但是它们没有在一个脚本中“捆绑”在一起而且它们没有缩小. 继承人我拥有的…… default.aspx包含: asp:ScriptManagerID="scriptma
我将一个项目从asp.net 3.5升级到4.5,以便使用脚本捆绑和
javascript的缩小.现在我把它全部运行了,脚本都出现在我定义的包中但是它们没有在一个脚本中“捆绑”在一起而且它们没有缩小.
继承人我拥有的…… default.aspx包含: <asp:ScriptManager ID="scriptmanager" LoadScriptsBeforeUI="false" runat="server" ScriptMode="Release" EnableScriptLocalization="false" > <Scripts> <%--Framework Scripts--%> <asp:ScriptReference Path="~/bundles/MyBundle" ScriptMode="Release"/> <%--Site Scripts--%> </Scripts> </asp:ScriptManager> Global.asax中的Application_Start: BundleTable.EnableOptimizations = true; BundleConfig.RegisterBundles(BundleTable.Bundles); BundleConfig.cs: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Optimization; namespace MyNameSpace { public class BundleConfig { // For more information on Bundling,visit http://go.microsoft.com/fwlink/?LinkId=254726 public static void RegisterBundles(BundleCollection bundles) { bundles.Add(new ScriptBundle("~/bundles/MyBundle").Include( "~/Scripts/WebForms/WebForms.js","~/Scripts/WebForms/MSAjax/MicrosoftAjax.js","~/Scripts/WebForms/MSAjax/MicrosoftAjaxWebForms.js","~/Scripts/WebForms/TreeView.js","~/Scripts/WebForms/Focus.js","~/Scripts/WebForms/MenuStandards.js")); } } } 我甚至在web.config中关闭了调试,即使我尝试在scriptmanager中强制释放模式以及脚本引用. <compilation debug="false" batch="true" targetFramework="4.5"> 输出仍然是几个引用: <script src="/MyProj/WebResource.axd?d=pynGkmcFUV13He1Qd6_TZA6EiyQ1YRW47qIzscWLzWU7jP_7DjoC2XbU7kCBkgYcJdoeAwqaVpUMnbWRsvhdMw2&t=634896541540000000" type="text/javascript"></script> <script src="/MyProj/ScriptResource.axd?d=zvkqIRNUspAvS1yKeFhMb4kS_IY-Q_9Yn_KOfmzKLnliETz8uip5T2BUr1JOPE4XV1bmnifY3Eg8vrX8bPLYT71P0Kf8DwEcoRw5fj2tqHdQSorRXVpasfsMXeJLHbT_alkHjf2wIrgxLzxYvocKIA2&t=12e197aa" type="text/javascript"></script> <script src="/MyProj/ScriptResource.axd?d=NJmAwtEo3Ipnlaxl6CMhvpbyEkpQU7AWZ3ZOrSRn7cdqTBUwP_3lu0l46EnEFBAkBOoC5I7IpMnx8u7VKe4fESCWGvycDq7dTXHsUSTg-j9u4S2Poz38UkmBa7Ta1cXyZ9DcFfKo7RpgjmNNoFjlZgbsHJEPN_AnazProCOQuws1&t=6119e399" type="text/javascript"></script> <script src="/MyProj/ScriptResource.axd?d=dwY9oWetJoJoVpgL6Zq8OPgCkw9mWNaQmhnwlbrOgCXqxXAsNin9JxaUjtv38gzHz78sozRMjuXYeM_GE0v4htSt6vWwOO4-gOCLfSt6rVOvxbpcCXCLN9jI7fWPkTL2Eq7a9kcN8S4MasueIxDV0rhf-htD32XuwA259deRSNs1&t=6119e399" type="text/javascript"></script> <script src="/MyProj/WebResource.axd?d=JoBkLzP19aTuxbWOhHobYmKZKUo0k_GoCFbuT9i-BqZJQhy_7Dl0oCPSUy3hiGltbFyiUTxWBZD-5YWblJpSZg2&t=634896541540000000" type="text/javascript"></script> 我错过了什么? 谢谢,J 解决方法
您的< asp:ScriptReference />似乎没有出现正在输出捆绑.我使用MVC从剃刀模板中引用捆绑包,如下所示:
@Scripts.Render("~/bundles/lib") 导致这样的输出(注意src属性包括原始包名称): <script src="/bundles/lib?v=gGKSj7TFmjDTZAjdEzBrqOOu9aGB6i4Tq0mHfaLUk_c1"></script> 如果您不使用剃刀,可以尝试直接引用System.Web.Optimization.Scripts类来调用Render()方法而不使用< asp:ScriptReference />. 关于缩小,您需要为您的包添加缩小变换,如下所示: var myBundle = new ScriptBundle("~/bundles/MyBundle").Include( "~/Scripts/WebForms/WebForms.js","~/Scripts/WebForms/MenuStandards.js") myBundle.Transforms.Add(new JsMinify()); bundles.Add(myBundle); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net core 系列 6 MVC框架路由(下)
- asp.net-mvc – Web API可空的必需属性需要DataMember属性
- 一个支持 CodeFirst/DbFirst/ModelFirst 的数据库小工具
- asp.net-mvc – MVC中的IE7仅样式表
- asp.net-mvc-3 – 使用带有布尔值的Html.RadioButtonFor不写
- asp.net-mvc – 如何在ASP.NET MVC中更改Url.Encode字符替换
- 使用Stream进行byte[]进行转换时要注意的事
- IIS如何处理ASP.net MVC请求?
- asp.net – 如果我没有为action方法指定[httpGet]或[httpPo
- asp.net-mvc-4 – 在MVC4环境中使用Razor和Angular.js