Csharp/C#教程:ASP.NET MVC多个虚拟路径捆绑带CDN分享


ASP.NET MVC多个虚拟路径捆绑带CDN

我正在尝试使用ASP.NET MVC 4添加一些支持CDN的捆绑包。目的是在同一数据中心托管的许多其他站点在本地共享内容

第一次尝试是:

bundles.Add(new ScriptBundle("~/bundles/jquery", "https://mysite/Content/js/").Include( "https://mycdnsite/Content/js/jquery.unobtrusive-ajax.min.js", "https://mycdnsite/Content/js/jquery-migrate-1.2.1.js", "https://mycdnsite/Content/js/jquery-{version}.js")); 

不幸的是,这是不可能的,因为virtualPath必须是相对的(只允许应用程序相对URL(〜/ url))

然后我试过这个:

  bundles.Add(new ScriptBundle("~/bundles/jquery", "https://mycdnsite/Content/js/").Include( "~/jquery.unobtrusive-ajax.min.js", "~/jquery-migrate-1.2.1.js", "~/jquery-{version}.js")); 

但它没有奏效,即使启用CDN:

 BundleTable.EnableOptimizations = true; bundles.UseCdn = true; 

是否可以使用CDN创建多个内容包?

AFAIK您不能在一个捆绑包中提供多个CDN主机。 ScriptBundle允许您为捆绑包指定备用URL,捆绑包可以包含多个本地文件。 你的语法是正确的。

 bundles.UseCdn = true; bundles.Add(new ScriptBundle("~/bundles/jquery", @"//ajax.aspnetcdn.com/ajax/jQuery/jquery-1.10.2.js" ).Include( "~/Scripts/jquery-{version}.js")); 

有几种方法可以解决这个问题。

上述就是C#学习教程:ASP.NET MVC多个虚拟路径捆绑带CDN分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

  1. 每个CDN托管脚本都有一个捆绑包。
  2. 手动创建一个文件包并将其上传到您自己的CDN并引用它。
 public static void RegisterBundles(BundleCollection bundles) { bundles.UseCdn = true; // enable CDN // How to add link to jQuery on the CDN ? var jqueryCdnPath = "https://mycdnsite/Content/js/jquery.unobtrusive-ajax.min.js"; bundles.Add(new ScriptBundle("~/bundles/jquery", jqueryCdnPath) .Include("~/Scripts/jquery-{version}.js")); } 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1016483.html

(0)
上一篇 2021年12月31日
下一篇 2021年12月31日

精彩推荐