questions/26393157/windows-update-caused-mvc3-and-mvc4-stop-working を参照してください。以下の警告を解決する最も簡単な方法は?
アセンブリ参照「System.Web.Mvc、Version = 4.0.0.0、Culture = neutral、PublicKeyToken = 31bf3856ad364e35」が「System.Web.Mvc、Version = 4.0.0.1、Culture = neutral、PublicKeyToken = 31bf3856ad364e35」に一致すると仮定すると、必要になる場合がありますランタイムポリシーを提供します。
NuGetパッケージを使用すると、これが時々発生します。私はそれがどのように起こるかを正確に特定することができませんでした。 (ユーザーエラーを想定しています。)解決するために何もアップグレードする必要はなく、NuGetキャッシュをクリアするだけです。
here にあるnugetコマンドラインツールを使用します。
このコマンドですべてのキャッシュをクリアできます:
nuget locals all -clear
参照: https://docs.nuget.org/consume/command-line-reference
Visual Studioが開いている場合は、おそらくVisual Studioを再起動する必要があります。
質問への最良の回答として....
しかしその後
これにより、Views/Web.configファイル内のすべての非表示の参照が見つかります。
すべての命題をテストした後、Webアプリケーションの.csprojを編集し、プロパティMvcBuildViewsをfalseに設定することで、最終的に警告を取り除くことに成功しました。
たぶんこれはあなたの何人かを助けるかもしれません。
この問題が発生するたびに、binフォルダをクリアする再構築を常に開始します。私が持っていないように、おそらくビジュアルスタジオを閉じたり開いたりする必要はありません。
これでうまくいかない場合は、上記のようなより複雑なソリューションを試してみてください。ただし、これは迅速でクリーンな修正方法です。
何回か試してみたところ、NuGetからアプリケーションの洞察とすべてのパッケージを更新することができました。その後、アプリの洞察にバージョンの競合がないことを確認し、正常に機能しました。
RoslynPadでこの警告が表示されていたのは、参照しているdllの1つ(私にとってはmscorlib.dll)がNuGetで取得したバージョンとは異なるバージョンを使用していたためです。警告が示すように、使用するバージョンのdllへのリンクを含むランタイムポリシーで解決することで解決できます。ファイルの先頭に次のようなものを追加するだけです。
#r "C:\Windows\Microsoft.NET\Framework64\v2.0.50727\mscorlib.dll"
返信が遅くなってすみませんが、私の場合、Visual StudioソリューションでMicrosoft.AspNet.Mvcの異なるバージョンを使用していたため、この警告が表示されていました。古いパッケージを同じバージョンにアップグレードすることで、それを取り除くことができました。
これが誰かを助けることを願っています。