[解決済み] ASP.NET (MVC 4) Web API OData Prerelease でファイルまたはアセンブリ System.Net.Http, Version=4.0.0.0 を読み込むことができませんでした。
質問
問題点
インストール後に Microsoft ASP.NET Web API OData パッケージ 5.0.0-rc1 をインストールした後に発生しました。 をインストールした後、次の例外が発生しました。
ファイルまたはアセンブリ 'System.Web.Http, Version=4.0.0.0' を読み込めませんでした。 Culture=neutral, PublicKeyToken=31bf3856ad364e35' またはその依存ファイルの 1 つをロードできませんでした。 またはその依存関係のいずれかです。配置されたアセンブリのマニフェスト定義がアセンブリ参照と一致しません。 アセンブリ参照と一致しません。(HRESULT: 0x80131040 からの例外)
私の MVC 4 プロジェクトは真新しく、本当に小さなもので、派手なものは何もありません。私は .NET フレームワーク 4.5 をターゲットにしています。
私はこれが必要です。 nugetパッケージ を Delta クラスを使用して PATCH を実装します。 (パッケージのバージョン 4.0.0.0 を使用すると、Delta クラスが動作しません)。
どうすれば直るのでしょうか?
System.Web.Http の私のバージョン
で GAC 私はバージョン 5.0.0.0 のSystem.Web.Httpを使用しています。
gacutil -l System.Web.Http Global Assembly Cache には次のアセンブリが含まれています。 以下のアセンブリが含まれています。System.Web.Http, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL
で ビジュアルスタジオ で、アセンブリをブラウズすると、System.Web.Http の指定されたバージョンは 4.0.0.0 (と表示されます(なぜ?)
で 私のプロジェクト への参照は、System.Web.Http.
- バージョンを持つ 5.0.0.0
- パッケージの \libnet45 フォルダを指定する。
- CopyLocal=trueを持つ。
試してみたこと
Web.config で redirect v 4.0.0.0 を 5.0.0.0 にバインドしてみました。
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="4.0.0.0-4.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
しかし、別の例外が発生します。
メソッド 'System.Web.Http.GlobalConfiguration.cctor()' が アクセスフィールド 'System.Web.Http.GlobalConfiguration.CS$<>9__CachedAnonymousMethodDelegate2' のフィールドにアクセスするための、メソッド 'System.Web.Http.GlobalConfiguration.cctor()' による試みが失敗しました。 が失敗しました。
v 4.0.0.0は、コアWeb APIエンジンで使用する必要があるのでしょうね。
リンクされた質問
コード分析エラー ファイルまたはアセンブリ 'System.Net.Http, Version=2.0.0.0 in MVC4 Web API を読み込むことができませんでした。 ファイルまたはアセンブリ 'System.Net.Http, Version=2.0.0.0 in MVC4 Web API' を読み込むことができませんでした。
どのように解決するのですか?
Visual Studio 2013 には、この問題に対処するための新機能があります。アプリをビルドすると、異なるバージョンのアセンブリが参照されていることについての警告が表示されるはずです。警告をダブルクリックして、アセンブリ バインディング リダイレクトを web.config に追加します。
参照 http://msdn.microsoft.com/en-us/library/2fc472t2.aspx をご覧ください。
jeff.eynon は、VS が自動的にファイルを編集するためには、(TFS ソース コントロールを使用している場合) web.config をチェックアウトしておく必要があることを以下で述べています。ヒントをありがとうございました。
関連
-
[解決済み] アンチフォージェリーの必須項目「__RequestVerificationToken」が存在しない ユーザー登録時のエラーについて
-
[解決済み] MVC-3から4へ変換されたアプリでSystem.Web.Optimizationへの参照を追加する方法
-
[解決済み】@Scripts.Render("~/bundles/jquery")を使用する理由)
-
[解決済み] ASP.NET 4.5がWebサーバーに登録されていない
-
[解決済み] 全ページ共通のデータをレイアウトに渡す
-
[解決済み] 偽造防止トークンはユーザー""のためのものですが、現在のユーザーは "username "です。
-
[解決済み] ASP.NET MVC 4 Custom Authorize Attribute with Permission Codes (ロールを使用しない)
-
[解決済み] ASP.NET MVC 4のデバッグモードでバンドルとミニフィケーションを有効にする
-
[解決済み] MVC4 Web API でファイルまたはアセンブリ 'System.Net.Http, Version=2.0.0.0' を読み込めなかった。
-
[解決済み] MVC4アプリケーションのprecompile during publishingオプションは、どのような効果がありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】@Scripts.Render("~/bundles/jquery")を使用する理由)
-
[解決済み] ASP.NET 4.5がWebサーバーに登録されていない
-
[解決済み] 全ページ共通のデータをレイアウトに渡す
-
[解決済み] 偽造防止トークンはユーザー""のためのものですが、現在のユーザーは "username "です。
-
[解決済み] System.Web.Http v5.0.0 にアップグレードするための NuGet パッケージはどこにありますか?
-
[解決済み] ASP.NET MVC 4 Custom Authorize Attribute with Permission Codes (ロールを使用しない)
-
[解決済み] ASP.NET Web API Urlを作成するには?
-
[解決済み] ASP.NET MVC 4のデバッグモードでバンドルとミニフィケーションを有効にする
-
[解決済み] MVC4 Web API でファイルまたはアセンブリ 'System.Net.Http, Version=2.0.0.0' を読み込めなかった。
-
[解決済み] MVC4アプリケーションのprecompile during publishingオプションは、どのような効果がありますか?