ASP.Net MVC ScriptBundle:为什么在从 CDN 检索时指定 jQuery 版本?
ASP.Net MVC ScriptBundle: Why specify jQuery version when retrieving from CDN?
我想使用 CDN 为我的 ASP.Net MVC 应用引用 jQuery。
我不想将应用绑定到 jQuery 的特定版本。
那么,为什么我能找到的每个示例似乎都在 CDN 路径中引用了特定的 jQuery 版本,但随后在 ScriptBundle 的“.Include”中使用了与版本无关的语法?
例如:
var cdnPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.1.min.js";
bundles.Add(new ScriptBundle("~/bundles/jquery", cdnPath)
.Include( "~/Scripts/jquery-{version}.js"));
为什么CDN路径不简单地指向一个目录,其中多个jQuery版本可能驻留然后CDN服务器return最新jQuery 版本(就像我的 MVC 应用程序在本地从包中获取脚本时所做的那样)。
或者,如果这不可能,那么为什么要在 .Include() 方法中使用与版本无关的语法呢?
Jquery 的一些主要版本不向后兼容。例如 jQuery v2 在 IE 6/7/8 上不 运行。所以如果你的项目必须 运行 在那些你将不得不坚持使用版本 1
编辑
Include()
用于本地脚本而不是 CDN 中的脚本。如果由于任何原因无法获取 CDN 脚本,则使用本地脚本。
我想使用 CDN 为我的 ASP.Net MVC 应用引用 jQuery。
我不想将应用绑定到 jQuery 的特定版本。
那么,为什么我能找到的每个示例似乎都在 CDN 路径中引用了特定的 jQuery 版本,但随后在 ScriptBundle 的“.Include”中使用了与版本无关的语法?
例如:
var cdnPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.1.min.js";
bundles.Add(new ScriptBundle("~/bundles/jquery", cdnPath)
.Include( "~/Scripts/jquery-{version}.js"));
为什么CDN路径不简单地指向一个目录,其中多个jQuery版本可能驻留然后CDN服务器return最新jQuery 版本(就像我的 MVC 应用程序在本地从包中获取脚本时所做的那样)。
或者,如果这不可能,那么为什么要在 .Include() 方法中使用与版本无关的语法呢?
Jquery 的一些主要版本不向后兼容。例如 jQuery v2 在 IE 6/7/8 上不 运行。所以如果你的项目必须 运行 在那些你将不得不坚持使用版本 1
编辑
Include()
用于本地脚本而不是 CDN 中的脚本。如果由于任何原因无法获取 CDN 脚本,则使用本地脚本。