两次包含ASP.NET Release jQuery
ASP.NET Release jQuery Included Twice?
因此,我有一个ASP.NET项目,在调试模式下,我在HTML源代码中得到以下行:
<script src="/Scripts/jquery-2.2.4.js"></script>
然而,当我部署该项目时,我的网站在源代码中有以下行:
<script src="/bundles/jquery?v=Ww-VxqepLI91N7FDR1JXgRvM347mWv5Bv_0D4LsyGEk1"></script>
我认为这与捆绑/缩小有关。这很正常。不正常的是,尽管我正在尝试使用jQuery 2.2.4,但捆绑/缩小的jQuery源似乎同时包含jQuery 2.2.4和3.0.0(我通过打开页面并注意到相同功能的多个副本(包括版本号)来验证这一点)。因此,我的网站的JavaScript失败了,说Bootstrap需要jQuery>=1.9.1和<3.0.0.
就我的一生而言,我不知道这个额外的jQuery文件是从哪里来的。
References.js:
/// <autosync enabled="true" />
/// <reference path="bootstrap.min.js" />
/// <reference path="jquery.validate.min.js" />
/// <reference path="jquery.validate.unobtrusive.min.js" />
/// <reference path="jquery-2.2.4.min.js" />
/// <reference path="modernizr-2.8.3.js" />
/// <reference path="respond.matchmedia.addlistener.min.js" />
/// <reference path="respond.min.js" />
NuGet(仅限于jQuery结果):
jQuery v2.2.4
No dependencies.
jQuery.Validation v1.15.0
jQuery (>= 1.4.4)
Microsoft.jQuery.Unobtrusive.Validation v3.2.3
jQuery (>= 1.8.0)
jQuery.Validation (>= 1.8.0)
packages.config:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Antlr" version="3.5.0.2" targetFramework="net46" />
<package id="bootstrap" version="3.3.6.1" targetFramework="net46" />
<package id="EntityFramework" version="6.1.3" targetFramework="net46" />
<package id="jQuery" version="2.2.4" targetFramework="net46" />
<package id="jQuery.Validation" version="1.15.0" targetFramework="net46" />
<package id="Microsoft.AspNet.Mvc" version="5.2.3" targetFramework="net46" />
<package id="Microsoft.AspNet.Razor" version="3.2.3" targetFramework="net46" />
<package id="Microsoft.AspNet.Web.Optimization" version="1.1.3" targetFramework="net46" />
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net46" />
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.1" targetFramework="net46" />
<package id="Microsoft.jQuery.Unobtrusive.Validation" version="3.2.3" targetFramework="net46" />
<package id="Microsoft.Net.Compilers" version="1.3.2" targetFramework="net46" developmentDependency="true" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net46" />
<package id="Modernizr" version="2.8.3" targetFramework="net46" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net46" />
<package id="Respond" version="1.4.2" targetFramework="net46" />
<package id="WebGrease" version="1.6.0" targetFramework="net46" />
</packages>
据我所知,所有的依赖关系都得到了满足。我想其中一个包可能试图包含jQuery3。
如有任何帮助,我们将不胜感激。我已经尝试过几次卸载和重新安装jQuery及相关库。如果需要任何其他信息,请告诉我!
编辑:
禁用绑定的结果如下。HTML页面现在有:
<script src="/Scripts/modernizr-2.6.2.js"></script>
<script src="/Scripts/modernizr-2.8.3.js"></script>
... and ...
<script src="/Scripts/jquery-1.10.2.js"></script>
<script src="/Scripts/jquery-2.2.4.js"></script>
<script src="/Scripts/jquery-3.0.0.js"></script>
你知道是什么原因造成的吗?
我通过将发布设置更改为:解决了这个问题
Remove additional files at destination (probably the real solution)
Precompile during publishing
令人讨厌的是,即使项目设置并没有真正引用其他文件,也会包含这些文件。我猜是捆。Add包含了所有与通配符/"版本"模式匹配的jquery/modernizr文件。
相关文章:
- 借助asp.net验证或java脚本对多个文本进行验证
- 将Javascript数组发送到控制器ASP.NET MVC
- ASP.NET通过单击JavaScript按钮触发c#事件
- 文本框不是从Javascript/Asp.net中的对话框中打印出来的
- 从javascript调用asp.net codebehind函数
- 使用javascript的Asp.net内容占位符
- 获取ASP.NET Ajax Timer状态
- ASP.NET网络摄像头显示
- 如何在只能有一个asp.net表单的主页上从asp.net页面中的javascript中获取值
- 如何将乳胶配方奶粉图像保存到Asp.net中的文件夹中
- asp.net,包括iss上的javascript slow
- 选择不在GridView-ASP.NET中激发
- 什么'是在asp.net MVC中将本地化的resources.resx文件转换为javascript文件的有效
- 使用ASP.NET将谷歌地图添加到项目中,并从数据库中检索位置
- 有什么“;错误的”;将javascript放在asp.net表单上,而不是放在单独的文件中
- 将Javascript日期转换为ASP.NET日期格式
- C#asp.net mvc Set CheckBoxFor已检查的具有Model Value的属性
- 在asp.net中确认是或否消息
- ASP.NET MVC 3-在ajax调用后,重定向到新页面或生成页面刷新
- asp.net中的验证工具