問題
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)
私のMVC4プロジェクトは真新しく、本当に小さく、派手なものは何もありません。.NET Framework4.5をターゲットにしています
私はこの必要nugetパッケージをするデルタクラスを使用してパッチを実装する (私は、デルタクラスが機能していないパッケージのバージョン4.0.0.0を使用する場合)。
どうすれば修正できますか?
System.Web.Httpの私のバージョン
でGAC Iバージョン持っ5.0.0.0 System.Web.Httpのを
gacutil -l System.Web.Httpグローバルアセンブリキャッシュには、次のアセンブリが含まれています:System.Web.Http、Version = 5.0.0.0、Culture = neutral、PublicKeyToken = 31bf3856ad364e35、processorArchitecture = MSIL
ではVisual Studioの、私はアセンブリを参照するとき、System.Web.Httpの特定のバージョンは、4.0.0.0(なぜ?)
では私のプロジェクト、System.Web.Httpへの参照
- バージョン5.0.0.0があります
- パッケージの\ lib \ net45 \フォルダーを指します
- CopyLocal = trueがあります
私が試したこと
Web.configでリダイレクトv4.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」へのアクセスに失敗しました。
v4.0.0.0は本当にコアWebApiエンジンで使用する必要があると思います。
リンクされた質問
コード分析エラーファイルまたはアセンブリを読み込めませんでした 'System.Net.Http、Version = 2.0.0.0 in MVC4 WebAPI ファイルまたはアセンブリを読み込めませんでした' System.Net.Http、Version = 2.0.0.0 in MVC4 Web API