web-dev-qa-db-ja.com

パーサーエラー: '/'アプリケーションのサーバーエラー

次のエラーが表示されました:「このリクエストを処理するために必要なリソースの解析中にエラーが発生しました。次の特定の解析エラーの詳細を確認し、ソースファイルを適切に変更してください。」

Parser Error Message: `Could not load type 'nadeem.MvcApplication'`.
Source Error:  Line 1:  <%@ Application Codebehind="Global.asax.cs" Inherits="nadeem.MvcApplication" Language="C#" %>
37
Arslan Sunny

Global.asaxファイルを右クリックし、View Markupをクリックします。属性Inherits="nadeem.MvcApplication"が表示されます。これは、Global.asaxファイルがnadeem.MvcApplication型から継承しようとしていることを意味します。

Global.asaxファイルをダブルクリックして、Global.asax.csファイルで指定されているクラス名を確認します。次のようになります。

namespace nadeem
{
    public class MvcApplication: System.Web.HttpApplication
    {
    ....

そうでない場合は、受け取ったエラーを受け取ります。 Global.asaxファイルのInherits属性の値は、System.Web.HttpApplicationから派生したタイプと一致する必要があります。

56
Kevin Aenmey

プロジェクトソースを2つの場所にダウンロードしたときに、まったく同じ問題が発生しました。この問題は、ソースをダウンロードすることでサイトの仮想ディレクトリの場所が変更され、2番目のソースを再構築していなかったためDLLがなかったことが判明しました。

  1. この問題を修正するには、ビルドするプロジェクトを開き、Webサイトのプロパティに移動します([プロジェクト]メニュー)
  2. プロジェクトの仮想ディレクトリを作成します。
  3. プロジェクトを再構築します。

一定

39
MilesDavies192

ソリューションのすべてのプロジェクトを実行して、コンパイルの出力をbin\debugおよびbin\releaseに設定すると、この問題が始まりました。最終的に、スタートアッププロジェクト(つまりglobal.asaxを含むプロジェクト)はbinのみに出力する必要があることに気付きました。

9
ObiwanBill

通常、MVCプロジェクトを作成するため、Global.asaxマークアップには次のようなものがあります。

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

Global.asax.csを別のプロジェクトに配置しましたか? Global.asaxからCodeBehind = "..."宣言を削除し、Inherits = "..."宣言を変更して、Global.asax.csファイルで定義されている正しい名前空間とクラス名を参照する場合。

移動していない場合は、Webプロジェクトのコンテキストメニューを使用して、Visual Studioでプロジェクトのクリーンを実行してから再構築を試みてください。このエラーが発生したとき、それは私のために働いた。

8
heads5150
  1. プロジェクトのプロパティに移動
  2. ページ下部の出力パスを見てください
  3. パスをbin \に変更します
  4. プロジェクトを保存して実行する
7
RgBN

このケースは解決されましたが、プロジェクトがIIS_Virtual_Directory\binとは異なるディレクトリにビルドされ、dllが見つからない場合にも、このエラーが発生する可能性があります。

6
ekimpl

ケビンが答えたように。 MVCプロジェクトでプロジェクト名と名前空間を変更していました。アプリケーションを実行すると、同じエラー「行1:<%.....」が表示されました。

これを修正するには、Global.asaxRight Click-> View Markup)内のネームスペースを更新し、Inherits属性でこれを「<correct root namespace for MVC project>.MvcApplication」に更新する必要がありました。 。

4
symi

私の場合、解決策は次のとおりです。

  1. 属性でGlobal.asaxのマークアップを確認しますInheritsこのInherits = "NameOfMyProject.Global"がありました
  2. 次に、Global.asax.csを確認すると、これが見つかりました。

    パブリッククラスGlobal_asax:System.Web.HttpApplication

  3. したがって、Global.asaxの属性Inheritsを変更し、最終的にマークアップが次のようになりました。

    Inherits = "NameOfMyProject.Global_asax"

  4. また、管理ツールでASP.NET状態サービスを開始しました。その後、私のアプリは正常に実行されます。

ビデオリソースから学習していて、ビューでCtrl-F5を押して直接読み込むように指示されたときにこのエラーに遭遇しました。これを行うことにより、私はあなたが投稿した同じエラーメッセージに遭遇しました。

これを修正するために、ソリューションをビルドし(ビルド>ソリューションのビルドまたはCtrl + Shift + B)、再試行しました。

0
tzipp

このエラーが発生したのは、Gitフォルダーを削除して再クローンした後です。 VS2010でソリューションを構築するのを忘れていました。私がそれを構築するとすぐに、すべてがうまくいきました。時にはそれはそのような本当にシンプルなものです。

0
Vegasvikk

単にプロジェクトを別の場所にコピーして実行するだけで、クリーニングが正しく行われず、出力/ binにセットアップの変更がある可能性があるため、問題があると思います

0
Nitin Dominic

FTPを使用してサーバー上のサイトのDLLsをアップロードしますが、WebサイトのメインDLLがサーバーに正しくアップロードされていない場合にこのエラーが発生することがあります。

そのため、サーバー上でrebuildを投影し、re-upload main DLLsをお勧めします。

0
RAM

私の場合、それは役立ちます:デフォルトのプロジェクト(Windowsの場合はDドライブのnaprmer)以外のフォルダを使用する場合、デフォルトのフォルダに変更し、プロジェクトを作成して実行します。再度、目的のフォルダーにプロジェクトを作成できます。奇妙な。しかし、これは私の場合に役立ちました。

0
Stanislav

これは、2つのソリューションを統合しようとしたときに起こりました。問題は、すべてのファイルで名前空間が適切に構成されていなかったことです。ストーリーの一部は@Kevin Aenmeyの回答で解決しましたが、他の多くの回答は...違います!

だから私にとって唯一の方法は、ソリューション全体で古い名前空間を検索し、それらすべてを新しい名前空間に置き換えることでした。

0
AmiNadimi

私たちの場合-公開されたイントラネットサイトのすべてのコンテンツを削除し、デバッグで正常に機能したプロジェクトを再公開すると、問題が修正されました。

0
Amit Brahmbhatt

ソリューションに新しいプロジェクトを追加した後、この問題が発生しました。ソリューションは問題なく構築されましたが、実行時に爆撃されました。

新しいプロジェクトはデフォルトで.NET 4.6.1をターゲットに設定されていましたが、mhyソリューションの他のすべては.NET 4.5をターゲットにしています。

他のプロジェクトに合わせて新しいプロジェクトのターゲットフレームワークを.NET 4.5に変更すると、問題が修正されました。

(Microsoftの1人に関する警告はありません)

0
Bob Gear

このエラーは、ネームスペースの名前が変更されたときに発生します。

-

  1. フォルダーエクスプローラー(ソリューションエクスプローラーを使用しない)に移動します。 FindGlobal.asaxファイル

enter image description here

  1. (メモ帳/任意のエディターで)ファイルを開き、置換を変更古い名前空間名前新しい名前空間

enter image description here

  1. Saveこれで動作するはずです。
0

私も同じ問題を抱えていましたが、それはソリューションを構築しなかったからです。ルーキーの間違い。ちょうど:ソリューションを構築する(Ctrl + Shift + B)

0
Tornja

私の状況では、これと同じエラーが発生していました。バージョン管理のためにソースツリーとともにgitを使用しています。私の場合、gitはプロジェクトで有効にされていましたが、コミットなどのステージングにVisual Studioを使用していませんでした。ソースツリーを使用していました。私が問題を何を使っていたのかは問題ではありません。VisualStudioがgitignoreファイルに次の行を入れていたからです。

#Build Results
[Bb]in/

それはbinフォルダーを無視していたため、その行を削除してbinディレクトリ全体をコミットし、サーバーにプッシュしてからサーバーに移動してからgit pullを実行すると、binフォルダーはサーバーにプッシュされません。 binフォルダーが表示され、すべてが機能し始めました!

ところで、私の最終的なgitignoreファイル(#Build results)セクションは次のようになりました:

# Build results

[Dd]ebug/
[Rr]elease/
x64/
build/
[Oo]bj/

Objフォルダーをサーバーにプッシュする必要があるかどうかはまだわかりませんが、現在はすべて正常に動作しています。

0
Eric Bishard