【问题标题】:How to bundle the JS loaded by script manager from CDN in Asp.Net如何在 Asp.Net 中捆绑脚本管理器从 CDN 加载的 JS
【发布时间】:2018-08-31 14:18:35
【问题描述】:

我在 asp.net 中有一个应用程序,我正在母版页中使用脚本管理器。我想从 CDN 加载与脚本管理器相关的所有脚本,因此我在脚本管理器中放置了 EnableCDN="true"。

<asp:ScriptManager runat="server" EnableCdn="true" />

我注意到所有脚本都是单独加载的,这增加了 http 请求,我想将它们全部捆绑到 1 个脚本中。

有没有人实现了将从 CDN 加载的脚本捆绑到 1 个 js 文件中,而不是在 asp.net(不是 MVC)中分开?

下面是单独加载的所有 js 的快照

【问题讨论】:

    标签: javascript asp.net scriptmanager asp.net-bundling


    【解决方案1】:

    ScriptBundle 中只允许包含应用程序相对 URL (~/url),仅在顶级捆绑包级别支持在捆绑包中使用 CDN。

    您可以在自己构建后将整个捆绑包上传到 CDN,然后我们就像 https://ajax.aspnetcdn.com/ajax/4.6/1/MsAjaxJs.js 一样。

    bundles.Add(new ScriptBundle("~/bundles/MsAjaxJs", "https://ajax.aspnetcdn.com/ajax/4.6/1/MsAjaxJs.js").Include(
        "~/Scripts/WebForms/MsAjax/MicrosoftAjax.js",
        "~/Scripts/WebForms/MsAjax/MicrosoftAjaxApplicationServices.js",
        "~/Scripts/WebForms/MsAjax/MicrosoftAjaxTimer.js",
        "~/Scripts/WebForms/MsAjax/MicrosoftAjaxWebForms.js"));
    

    此外,当在web.config 文件中将编译设置为false 时,将启用优化

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-18
      • 2013-01-23
      • 2018-07-03
      • 1970-01-01
      • 2011-11-18
      • 1970-01-01
      • 2016-11-20
      • 1970-01-01
      相关资源
      最近更新 更多