2011-12-29 13 views
1
の古いバージョン

私だけNuGetted ServiceStack.Redis 3.1.3を期待しかし、私は、アプリケーションのすべてをビルドするときにその依存関係として、それはまた、今ServiceStack.CommonとServiceStack.Text 3.1.6ServiceStack RedisのクライアントがServiceStack.Common

を取得OKです。

しかし、私がアプリケーションを実行すると、いくつかのRedis Clientメソッドが正しく実行されますが、それらのいくつかが正しく実行されます。 (RedisClient.GetAllKeys)が得られるが、例外

Could not load file or assembly 'ServiceStack.Common, Version=1.0.4336.27526, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.

をスローそれから私は、すべてのDLLのとnuget packgageの設定を削除し、明示的にNuGet ServiceStack.Common -Version 3.1.3を行なったし、それを得ました。しかし、その後、NuGet ServiceStack.Redis -Version 3.1.3を試してみると、Commonの3.1.3バージョンが自動的に削除され、3.1.6バージョンがダウンロードされました!

Arrrghhh、私はインテリジェントインストーラを嫌っています。

これを修正するにはどうすればよいですか?

ServiceStackの発行者はこの問題についても知っていますか?

答えて

2

問題を発見しました。

コンソールアプリケーションからServiceStackを使用しようとしましたが、「ClientProfile」モードで構築するように構成されていました。

ServiceStackは、実行時にアクセスできないSystem.Webを内部的に参照します。

フルフレームワークモードを使用してアプリケーションをビルドに切り替えましたが、すべて正常に機能します。

ありがとうございますmythz!

0

いいえ、ServiceStackはこの問題を認識していませんでした。何が原因なのか知りたいのですが。

私はServiceStack.Redisの新規インストールを試みましたが、期待どおりに動作します。

dllを削除するには、NuGetパッケージマネージャーにアクセスして、インストールされているServiceStack.Redisパッケージを見つけてアンインストールをクリックする必要があります。これにより、プロジェクトの次のインストールがNuGet Webサイトからダウンロードされ、ダーティDLLキャッシュが再利用されなくなります。

NuGetの最新バージョンを使用し、古いNuGetキャッシュがクリアされていることを確認してください。すなわち、NuGet/packagesフォルダを見つけて削除する。

関連する問題