2014-02-26 38 views
23

在其中一個項目中,我需要重新安裝jQuery NuGet包(一個MVC解決方案)。添加「Microsoft.jQuery.Unobtrusive.Validation」包要求jQuery 1.4.1?

還有一個「Microsoft.jQuery.Unobtrusive.Validation」,我應該卸載之前卸載jQuery包卸載。

現在我嘗試(重新)安裝jQuery包以及之前刪除的所有依賴包。 「Microsoft.jQuery.Unobtrusive.Validation」包中斷:

試圖解析依賴關係'jQuery(≥1.8)'。
試圖解決依賴性'jQuery.Validation(≥1.8)'。
嘗試解析依賴關係'jQuery(≥1.3.2 & &≤1.6)'。
將'jQuery 1.8.0'更新爲'jQuery 1.4.1'失敗。
無法找到與'jQuery 1.4.1'兼容的'Microsoft.jQuery.Unobtrusive.Validation' 版本。

was is das?我需要使用最新的jQuery(2.0.xx)!

我應該說類似的「Microsoft.jQuery.Unobtrusive。Ajax」包沒有這個'錯誤'。它安裝沒有問題。

PS。現在,我嘗試安裝(非Microsoft)jQuery.Validation ...

這是錯誤日誌:

試圖解決依賴「Microsoft.jQuery.Unobtrusive.Validation(≥2.0.20613.0 )」。
正在嘗試解析依賴關係'jQuery.Validation(≥1.8 & & < 2.0)'。
嘗試解析依賴關係'jQuery(≥1.3.2 & &≤1.6)'。
安裝'jQuery 1.4.1'。成功安裝'jQuery 1.4.1'。
安裝'jQuery.Validation 1.8'。
成功安裝'jQuery.Validation 1.8'。
安裝'Microsoft.jQuery.Unobtrusive.Validation 2.0.20710.0'。
已成功安裝'Microsoft.jQuery.Unobtrusive.Validation 2.0.20710.0'。
正在安裝'jQuery.Validation.Unobtrusive 2.0.20710.0'。
已成功安裝'jQuery.Validation.Unobtrusive 2.0.20710.0'。
安裝失敗。
回滾...
將'jQuery 1.9.0'更新爲'jQuery 1.4.1'失敗。無法找到與'jQuery 1.4.1'兼容的'bootstrap,jQuery.BlockUI,Microsoft.jQuery.Unobtrusive.Ajax'版本。

回答

48

我剛纔遇到了同樣的問題。

使用的NuGet我補充說: 「jQuery的」,然後選擇 「jQuery的Validatation」 試了 「微軟不顯眼的jQuery驗證」 又來了,這一次它很好地安裝:)

+3

謝謝!如此奇怪,nuget無法弄清楚這一點...... –

+1

是的......肯定這是NuGet無法正確解決依賴問題。只是推特給NuGet團隊:https://twitter.com/johnleniel/status/453250061473161217 –

+0

+1很令人沮喪的是'Microsoft.Jquery.Unobtrusive.Validation'不知道檢查自己的'Jquery.Validation'依賴。無論如何,這個「jQuery 1.4.1」業務是什麼? –

2

同樣在這裏的問題。我離開了jQuery 2.1.0安裝包,然後安裝了jQuery Validate,然後安裝了jQuery Unobtrusive並且工作正常。

9

jQuery 1.x和jQuery 2.x是jQuery的兩個獨立分支。 jQuery 1.x繼續支持舊版本的IE(6/7/8),而2.x則不支持。實質上,有兩個「最新」版本的jQuery。

jQuery驗證目前沒有使用2.x分支和currently lists 1.6.4, 1.7.2, 1.8.3, 1.9.1, 1.11.1 as supported/tested進行測試。它可以在jQuery 2.x中正常工作,但是從技術上講它目前不支持它。正因爲如此,我一直堅持最新的jQuery 1.x版本。

你如何解決這個問題?

爲了解決這個問題,請在軟件包管理器控制檯中輸入以下命令,將參考文件從2.x更新到1.11.1,以切換到最新的jQuery 1.x版本(當前爲1.11.1)。

Install-Package jQuery -Version 1.11.1 

像@Dragick說以前有一個奇怪的依賴問題,即Microsoft.jQuery.Unobtrusive.Validation的NuGet無法確定jQuery的版本,如果你嘗試直接安裝,而不已經有安裝jQuery.Validation的NuGet。要解決此問題,請分別安裝它們,如下所示:

Install-Package jQuery.Validation 
Install-Package Microsoft.jQuery.Unobtrusive.Validation