私の開発マシンにWebMatrix 2 Betaをインストールした後、そのマシンでコンパイルされ、運用サーバーにデプロイされたMVCプロジェクトはSystem.Web.WebPages
を探してFileNotFoundException
を投げ始めます。WebMatrix 2 Betaをインストールした後、MVCプロジェクトがプロダクションサーバーで例外をスローするのはなぜですか?
"...System.IO.FileNotFoundException: Could not load file or assembly 'System.Web.WebPages,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies.
The system cannot find the file specified. File name: 'System.Web.WebPages, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35'..."
私はこれを支援するため、Googleで何かを見つけることができませんでしたので、私はこのような状況に遭遇し、誰のためにここに尋ねると、これを答えるいます。この問題につながるのは、かなり不明瞭な状況です。
さまざまなリリースでアップグレードしていたかなり古いMVCプロジェクトがある場合は、バージョン管理されていないプロジェクトの参照がSystem.Web.WebPages
になっている可能性があります。
<Reference Include="System.Web.WebPages" />
これは、プロジェクトがコンパイルされたバージョンが見つかったバージョンが、使用可能なバージョンと一致する場合は問題ありません。
WebMatrix 2 Betaをインストールすると、このDLLの新しいバージョンが追加されます。あなたのMVCプロジェクトはコンパイルのためにv2.0.0.0を引き出し始めます。 WebMatrix 2 Betaをインストールしていないシステムに移動すると、v2が検出されず、上記の例外がスローされます。