3

SignalR バージョン 1.0.0 が出ていますが、古いバージョンの 1.0.0-rc1 をインストールしたいです。

このコマンドを使用しましたが、NuGet はバージョン フラグを無視して 1.0.0 をインストールするようです。

PM> Install-Package Microsoft.AspNet.SignalR -Version 1.0.0-rc1 -Pre
Attempting to resolve dependency 'Microsoft.AspNet.SignalR.JS (≥ 1.0.0-rc1)'.
Attempting to resolve dependency 'jQuery (≥ 1.6.4)'.
Attempting to resolve dependency 'Microsoft.AspNet.SignalR.SystemWeb (≥ 1.0.0-rc1)'.
Attempting to resolve dependency 'Microsoft.AspNet.SignalR.Owin (≥ 1.0.0)'.
Attempting to resolve dependency 'Microsoft.AspNet.SignalR.Core (≥ 1.0.0)'.
Attempting to resolve dependency 'Newtonsoft.Json (≥ 4.5.11)'.
Attempting to resolve dependency 'Owin (≥ 1.0)'.
Attempting to resolve dependency 'Microsoft.Owin.Host.SystemWeb (≥ 1.0.0)'.
Attempting to resolve dependency 'Microsoft.Web.Infrastructure (≥ 1.0.0.0)'.
'Microsoft.AspNet.SignalR 1.0.0-rc1' already installed.
Successfully added 'Microsoft.AspNet.SignalR 1.0.0-rc1' to GeoMVC.

最後の行は、1.0.0-rc1 が正常にインストールされたことを示していますが、明らかに NuGet は 1.0.0-rc1 ではなく 1.0.0 の依存関係を解決しています。プロジェクトの参照を見ると、バージョン 1.0.0 です。

を使用してパッケージをアンインストールしてuninstall-package Microsoft.AspNet.SignalR -forceから再インストールしようとしました。同上。

私は何を間違っていますか?

4

1 に答える 1

4

これが発生する理由は、SignalR 1.0.0-rc2 のすべての依存関係が 1.0.0-rc2 以上であるため、パッケージを自動解決すると、パッケージが rtw バージョンに解決されるためです。

これを修正する魔法のような簡単な方法はありませんが、回避策はパッケージを最初からインストールすることです。たとえば、コア コンポーネントを最初にインストールしてから、チェーンを上っていきます。

Install-Package Microsoft.AspNet.SignalR.JS -Version 1.0.0-rc2 -Pre  
Install-Package Microsoft.Owin.Host.SystemWeb -Version 1.0.0-rc2 -Pre  
Install-Package Microsoft.AspNet.SignalR.Core -Version 1.0.0-rc2 -Pre  
Install-Package Microsoft.AspNet.SignalR.Owin -Version 1.0.0-rc2 -Pre  
Install-Package Microsoft.AspNet.SignalR.SystemWeb -Version 1.0.0-rc2 -Pre  
Install-Package Microsoft.AspNet.SignalR-Version 1.0.0-rc2 -Pre  

これはすべて正しいと思います。何かを忘れた場合はお知らせください。

お役に立てれば!

于 2013-02-22T20:37:32.800 に答える