6

Windows Azure Caching Previewを使用しようとしています。

専用のキャッシュ ワーカー ロールが 1 つ、以前のキャッシュを使用する Web ロールが 1 つ、キャッシュを継続的に更新するワーカー ロールが 1 つあります。

Windows Azure ガイドの指示に従いましたが、それでもエラーが発生します。

ファイルまたはアセンブリ 'Microsoft.ApplicationServer.Caching.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' またはその依存関係の 1 つを読み込めませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。(HRESULT からの例外: 0x80131040)

1000000 のチェック済み依存関係を 2 倍 3 倍にしました。正しいものがあります。dll のセットが 2 つあることに気付きました。1 つは使用したいバージョン 1.0.0.0 で、もう 1 つは使用したくないバージョン 101.0.0.0 です。すべての .config ファイルにステートメントを追加BindingRedirectして、101 バージョンを 1.0.0.0 にマップしました。\bin フォルダーを確認し、Jetbrains で dll を逆コンパイルしました。正しいです。私は忍耐力を失い始めます。明示的なパスを入力したときに指定した DLL が .NET で取得されないのはなぜですか?

4

3 に答える 3

2

別の方法を見つけました: C:\Program Files\Microsoft SDKs\Windows Azure.NET SDK\2012-06\ref\Microsoft.ApplicationServer.Caching.Core.dll の名前を Microsoft.ApplicationServer.Caching.Core.dll_old に変更しました。

私には十分でした。

これは、問題のより具体的な説明です。プロジェクトを個別に取得する場合、完全に機能するようです。私は 3 つのワーカー ロールと 1 つの Web ロールを持っています。プロジェクトを 1 つずつビルドするたびに、出力ディレクトリに正しい dll が表示されます。Windows Azure Cloud パッケージに問題があるだけで、BindingRedirect ディレクティブが無視されているようです。

于 2012-08-21T09:12:17.097 に答える
1

関連する場所に保管するための単なる提案。

質問に記載されている問題に遭遇しました。唯一の違いは、Caching.Core ではなく Caching.Client が見つからなかったことです。前の回答で提案されているように、SDK ref フォルダー内のライブラリを削除しようとしましたが、役に立ちませんでした。

とにかく、私の解決策はかなり特殊なようです。

私の場合、参照されていないライブラリをいくつか見つけたことが役に立ちましたが、それらは私のプロジェクトが機能した唯一の環境のパッケージの中にありました。* System.Web.Providers.1.1 * System.Web.Providers.Core.1.0

何らかの理由で packages.config ファイルに欠落していたため、nuget フィードから更新できませんでした。そのため、それらを直接参照するか、実行しようとしているプロジェクトからアクセスできるようにする他の方法を試すことができます。

于 2012-10-16T13:30:17.177 に答える