トップ回答者
ASP.NET MVC パーサーエラーのトラブルについて

質問
-
初投稿になります。よろしくお願いいたします。
先日ASP.NET MVC5 にて作成したWEBシステムを、サーバ環境にセットアップし、確認すると、
下記のようなエラーが発生し、全く動作致しませんでした。
'/Hogehogeアプリケーションでサーバー エラーが発生しました。
パーサー エラー
説明: この要求の処理に必要なリソースの解析中にエラーが発生しました。以下の解析エラーの詳細を確認し、ソース ファイルに変更を加えてください。
パーサー エラー メッセージ: 型 'hogehoge.MvcApplication' を読み込めませんでした。
ソース エラー:行 1: <%@ Application Codebehind="Global.asax.vb" Inherits="hogehoge.MvcApplication" Language="VB" %>
他PCでまったく同じソースコードをビルドし、サーバ環境にセットアップすると動作します。
また、ローカルIISでの動作も確認しています。
Visualstudioは2015(v14)
失敗するPCのOSはWindows7 32bit
成功するPCのOSはWindows7 64bit
サーバOSはWindows server 2012です。
OSのBit数に問題があるのかと思いましたが、
以前にもWEBシステムを作成したことがあり、その際にはサーバ側でも動作することを確認しています。
何が問題なのかさっぱりわかりません。
お力を貸していただけないでしょうか。
回答
すべての返信
-
エラーメッセージでググると以下の記事がヒットしますがそこに書いてあることに心当たりはありませんか?
[VS.NET] Visual C# .NET を使用して .aspx ページを参照すると
"型を読み込めませんでした" のエラー メッセージが表示される
https://support.microsoft.com/ja-jp/help/306155/prb-could-not-load-type-error-message-when-you-browse-to--aspx-page-by -
MvcApplication というのは Global.asax.cs/vb に定義されているクラスで、最初の質問に書いてあったエラーメッセージはそれが読めないと言っています。
その理由でもっともありそうなのが、Visual Studio でビルドしたアセンブリ(.dll)が bin フォルダにないということで、それが上のレスで紹介した記事の話です。
上の質問者さんのレスの、
> また、ビルド・リビルドを繰り返し、エクスプローラからbin内部をクリーンしてからビルドを行っても同じような現象が発生してしまいます。
・・・というのは、上記のことは理解されていて、そこには問題ないことは十二分に確認したということですか?
-
最初の質問では、
> サーバ環境にセットアップし、確認すると、
ということで、開発マシンでは問題なくてサーバーにデプロイした時の問題のように読めますが、
> ビルド・リビルドを繰り返し、エクスプローラからbin内部をクリーンしてからビルドを行っても同じような現象が発生してしまいます。
・・・では、開発マシンでも問題があるように読めます。
最初の質問にあった、
> Visualstudioは2015(v14)
> 失敗するPCのOSはWindows7 32bit
> 成功するPCのOSはWindows7 64bitというのは開発マシンですよね?
「失敗する」というのはどういう意味なんですか? 自分は、開発マシンでは問題なく動くがサーバーにデプロイすると MvcApplication が読めないという問題が出るのだと理解していましたが、違うのでしょうか?
一体何がどうなっているのか分かりません。もう少し整理していただけませんか?
-
正確な情報が伝えられず申し訳ありません。
過程を整理致しますと
①開発マシン1(win7-32) ASP.NET MVC5 アプリケーションのビルド(コンソールでは成功表示)
②ローカルIISに配置、IEから参照し動作を確認(問題なし)
③②と同じ要領でサーバIISに配置、質問のエラー発生
④開発マシン2(win7-64)にて、①と同様にビルド
⑤④を③と同様にサーバIISに配置。正常動作
※ただし、開発マシン1は今回のプロジェクトと同じものをサーバIISに配置し動作した実績あり。今回は改修時に発生。
質問内容は
1. なぜ開発マシン1でビルドしたアプリケーションはエラーが発生し、開発マシン2でビルドしたものは動作するのか
2. 開発マシン1は同じプロジェクトで実績があるが、なぜエラーが発生するようになったのか
です。