227

MVC3 プロジェクトに取り組んでいますが、次のエラーが表示されます。

パーサー エラー メッセージ: タイプ 'GodsCreationTaxidermy.MvcApplication' を読み込めませんでした。

ソース エラー:

ライン1:<%@ Application Codebehind="Global.asax.cs" Inherits="GodsCreationTaxidermy.Core.MvcApplication" Language="C#" %>

私が得るエラーは、GodsCreationTaxidermy.Core.MvcApplication を読み込めませんが、このスクリーン ショットではコア部分がエラーに表示されていません。

エラーページのスクリーンショット

このエラーに対するアイデアや解決策はありますか?

4

37 に答える 37

246

プロジェクトの出力パス (プロジェクトのプロパティ / ビルド) がに設定されていることを確認binます bin\Releasebin\Debug

何らかの理由で、IIS (VS 開発サーバーまたはローカル IIS) は常にディレクトリからライブラリにアクセスしますbin(サブディレクトリを検索しません)。

于 2013-03-14T16:40:27.330 に答える
186

ローカル Web サーバーは、実際に作業しているものとは異なるコードを実行しています。デバッグを停止したことを確認し、ローカル Web サーバーを停止し、Peter が提案したようにクリーンアップして再構築し、global.asax と global.asax.cs を再確認して、もう一度やり直してください。

これが機能せず、ローカル IIS を使用している場合は、IIS マネージャーでサイトを削除し、手動で再作成してみてください。

于 2012-08-08T21:56:48.860 に答える
39

global.asax ファイルを変更して (どこかにスペースを追加するだけ)、再実行してみてください。これにより、組み込みの Web サーバーが強制的に更新され、global.asax ファイルが再コンパイルされます。

また、クリーンアップと再構築を行います-問題を修正する必要があります

于 2012-07-27T06:31:04.170 に答える
33

が生成された後に名前空間情報 (プロジェクトまたはクラス レベル) を変更すると、この問題が発生することがありますglobal.asax

ファイルを右クリックして [アプリケーションからGlobal.asax開く] を選択し、[エンコード付き XML (テキスト) エディター] を選択します (他のエディターも同様に機能する場合がありますが、私はこれを使用しています)。

次に、XML ディレクティブの「Inherits」セクションを編集します。

<%@ Application Codebehind="Global.asax.cs" Inherits="GodsCreationTaxidermy.MvcApplication" Language="C#" %>)

Application クラスの実際の完全な名前と一致するようにします。以上です。

もう 1 つのオプションは、Global.asax.cs からすべてのコードをコピーしてから、別の Global.asax ファイルを削除して作成することです (その後、コードを Global.asax.cs にコピーして戻します)。

于 2014-05-06T05:22:27.953 に答える
24

ビジュアルスタジオを閉じて再開したところ、うまくいきました。

于 2014-04-14T06:33:14.440 に答える
19

BUILD -> CONFIGURATION MANAGER に移動し、プロジェクトの横にあるチェックボックスをオンにして、プロジェクトが実際にビルドされるようにする必要がありました。

于 2014-12-03T22:41:39.937 に答える
3

私は古い「フォルダーベース」の ASP.NET Web プロジェクト (これは大嫌いです) に取り組んでいましたが、これが私の修正であることがわかりました。

フォルダーを作成しApp_Codeます (まだフォルダーがない場合)。

Global.asax.vbファイルをApp_Codeフォルダに移動します

Global.asax のマークアップでは、名前空間を省略できます (少なくとも、このスタイルのプロジェクトでは、承知しました)。

<%@ Application Codebehind="Global.asax.vb" Inherits="MyApp" Language="VB" %>

...ここで、「MyApp」は Global.asax.vb で定義されているクラスの名前です

于 2015-08-27T20:20:03.823 に答える
3

MVC5 アプリケーションでこれに遭遇したばかりで、何も機能していませんでした。これは、SVN をプロジェクトの古いバージョンに戻そうとした直後に発生しました。

global.asax.csを削除してから、右クリックして Project -> Add New Item -> Global.asax で新しいものを追加する必要があり、最終的に修正されました。

それが誰かを助けるかもしれないと思っただけです。

于 2015-02-12T19:04:05.457 に答える
2

この投稿から少なくとも 4 つの提案を試したことを報告する必要があります。それらのどれも機能しませんでした。それでも、バックアップから取得することで回復したことを報告できてうれしいです。ログファイルから最後のコード変更を更新するだけで済みました。10分もかかりませんでした。この投稿を読んで他の提案を試すのに 3 回費やしました。ごめん。

非常に奇妙なエラーでした。このグレムリンに遭遇した他の誰かに幸運を。

于 2015-05-15T20:01:22.527 に答える
2

同じプロジェクトを実行している Visual Studio の 2 つのインスタンスがある場合、同じ問題が発生します。したがって、両方の Visual Studio を閉じて、インスタンスを 1 つだけ開いたところ、問題なく動作するようになりました。

于 2015-08-12T07:49:12.317 に答える
1

私も同じ問題に直面しました。すべての回答に従っているにもかかわらず、機能しませんでした。次に、「Inherits = namespace.class」を「Inherits =完全修飾アセンブル名」、つまり「Inherits = namespace.class、assemblyname、Version =、Culture =、PublicKeyToken =」に変更しました。

于 2015-08-26T09:39:13.487 に答える
1

この問題は、フォルダに適切なアクセス許可を与え、IIS からチェックすることで解決しました。

ローカル環境でテストしているため、全員に許可が与えられました。しかし、公開モードでは、ASP.Net ユーザーにのみ許可を与えると思います。

于 2013-08-03T07:35:48.640 に答える
1

はい、すべての回答を読みました。ただし、あなたが私で、残っている髪の毛をすべて抜いている場合は、\bin フォルダーを確認してみてください。ほとんどの proj ファイルには、XML 要素の下にグループ化された複数の構成がある可能性があるPropertyGroupため、値を「bin\Debug」から変更しOutputPathて「\Debug」部分を削除し、再構築します。これにより、ファイルが \bin フォルダーに配置され、Express IIS がビルドを見つけてロードできるようになります。ローカル デバッグ デプロイがターゲット環境を見つけてロードできるように、これらのさまざまなビルドを管理する正しい方法は何か疑問に思っています。

于 2020-03-02T15:12:49.503 に答える
0

これを解決するために、文字通り 1 日を費やしました。

機能した唯一のことは、.sln ファイルを削除し、新しいファイルを作成して、プロジェクトを 1 つずつ追加し直すことでした。

¯\_(ツ)_/¯ - プログラミング - ¯\_(ツ)_/¯

于 2016-05-20T16:10:56.503 に答える
0

また、同じエラーが発生しました...仮想ディレクトリのIIS構成を確認し、プロパティ-ASP.NET-ASP.NETバージョンがプロジェクトプロパティ-アプリケーション-ターゲットフレームワークと同じであることを確認してください。(これでこのエラーが修正されました。)

于 2013-10-11T13:40:04.913 に答える
0

私のアプリは古いバージョンの VS でビルドされており、bin フォルダーがありませんでした。私はそれを新しいバージョンにアップグレードしましたが、それを展開するのは悪夢でした。最終的に、このエラーを [プロジェクト] > [プロパティ] > [アプリケーション] まで追跡しました。ターゲット フレームワークは 2.0 に設定されました。IISマネージャー/アプリケーションプールで一致するようにサーバー上で変更すると、問題が解決しました。

于 2013-11-18T21:22:28.533 に答える
0

最近、Web アプリケーションでこれを経験しました。問題は、Microsoft.Net.Compiler および Microsoft.Code.Dom への依存関係をもたらした nuget パッケージでした。

マルチレベルのコンパイラ バージョンをサポートしています。

これにより、アプリケーションが Web アプリケーションではなく ASP.NET Web サイトに変換されました..これを解決するのに永遠にかかりました-2.5日!!!

Nuget Manager からそれらを削除し、obj および bin ディレクトリ内のファイルを削除し (スタジオを閉じて)、プロジェクトを再度開いて再構築しました。それで直りましたが、

なんて痛かったんだ!!

これで他の時間を節約できることを願っています!

于 2020-03-02T00:16:01.297 に答える