L'erreur suivante s'est produite: "Une erreur s'est produite lors de l'analyse d'une ressource requise pour traiter cette demande. Veuillez consulter les détails de l'erreur d'analyse spécifique ci-dessous et modifier votre fichier source de manière appropriée."
Parser Error Message: `Could not load type 'nadeem.MvcApplication'`.
Source Error: Line 1: <%@ Application Codebehind="Global.asax.cs" Inherits="nadeem.MvcApplication" Language="C#" %>
Cliquez avec le bouton droit sur votre fichier Global.asax
et cliquez sur View Markup
. Vous verrez l'attribut Inherits="nadeem.MvcApplication"
. Cela signifie que votre fichier Global.asax
tente d'hériter du type nadeem.MvcApplication
.
Maintenant, double-cliquez sur votre fichier Global.asax
et voyez le nom de la classe spécifié dans votre fichier Global.asax.cs
. Ça devrait ressembler a quelque chose comme ca:
namespace nadeem
{
public class MvcApplication: System.Web.HttpApplication
{
....
Si ce n'est pas le cas, vous recevrez l'erreur que vous avez reçue. La valeur de l'attribut Inherits
de votre fichier Global.asax
doit correspondre à un type dérivé de System.Web.HttpApplication
.
J'ai eu exactement le même problème lorsque j'ai téléchargé la source du projet à deux endroits. Le problème s’est avéré être en téléchargeant la source, il a modifié l’emplacement du répertoire virtuel des sites et, comme je n’avais pas reconstruit la deuxième source, il n’y avait pas de DLL.
Fixé
Après avoir parcouru tous mes projets dans ma solution pour définir la compilation en sortie sous bin\debug et bin\release , ce problème a commencé pour moi. J'ai finalement réalisé que le projet de démarrage (c'est-à-dire le projet avec global.asax) devait générer une sortie vers bin only.
Comme vous créez normalement un projet MVC, le balisage Global.asax présente les caractéristiques suivantes:
<%@ Application Codebehind="Global.asax.cs" Inherits="StackOverflow.MvcApplication" Language="C#" %>
Avez-vous placé le fichier Global.asax.cs dans un autre projet? Si vous avez supprimé la déclaration CodeBehind = "..." de Global.asax et modifiez la déclaration Inherits = "..." afin qu'elle fasse référence à l'espace de noms et au nom de classe corrects tels qu'ils sont définis dans le fichier Global.asax.cs.
Si vous ne l'avez pas déplacé, essayez un nettoyage puis une reconstruction du projet dans Visual Studio à l'aide du menu contextuel du projet Web. Cela a fonctionné pour moi quand j'ai eu cette erreur.
Le cas est résolu, mais vous pouvez également obtenir cette erreur si votre projet génère dans un répertoire différent de celui de IIS_Virtual_Directory\bin et que des dll sont manquantes.
Comme Kevin a répondu. Je changeais le nom du projet et l'espacement des noms dans mon projet MVC. Quand j'ai exécuté l'application, j'ai eu la même erreur "Ligne 1: <% .....".
Pour résoudre ce problème, je devais mettre à jour l'espace de noms dans Global.asax
(Right Click
-> View Markup
), puis dans l'attribut Inherits
, le mettre à "<correct root namespace for MVC project>.MvcApplication
".
Dans mon cas, la solution était la suivante:
Ensuite, vérifiez le fichier Global.asax.cs et j'ai trouvé ceci:
classe publique Global_asax: System.Web.HttpApplication
Par conséquent, j'ai changé l'attribut Inherits dans mon Global.asax, et finalement le balisage était le suivant:
Inherits = "NameOfMyProject.Global_asax"
De plus, j'ai lancé le service d'état ASP.NET dans les outils d'administration. Ensuite, mon application s'exécute normalement.
J'apprenais d'une ressource vidéo et j'ai rencontré cette erreur quand on m'a demandé d'appuyer sur Ctrl-F5 dans la vue pour le charger directement. En faisant cela, j'ai rencontré le même message d'erreur que vous avez posté.
Afin de résoudre ce problème, j'ai construit la solution (Build> Build Solution ou Ctrl + Maj + B), puis j'ai réessayé.
Lorsque j'ai eu cette erreur, c'était après avoir supprimé et recloné un dossier Git; Ce qui s'est passé, c'est que j'ai oublié de construire la solution dans VS2010. Dès que je l'ai construit, tout a bien fonctionné. Parfois, c'est quelque chose de vraiment simple comme ça.
il suffit simplement de copier le projet à un autre emplacement et de l'exécuter fonctionnera. Je pense que le problème à cause du nettoyage n'est pas correctement effectué et qu'il peut y avoir une modification de la configuration dans la sortie/bin.
J'utilise FTP
pour télécharger DLL
s de mon site sur le serveur, mais parfois cette erreur se produit lorsque la DLL
principale du site Web n'a pas été téléchargée correctement sur le serveur.
Je vous recommande donc de reconstruire vous projetez et rechargez à nouveau DLL
s sur le serveur.
Dans mon cas, cela aide: Si vous utilisez un dossier autre que le projet par défaut (naprmer sur le lecteur D, dans le cas de Windows), puis passez au dossier par défaut, créez le projet, exécutez-le. Là encore, vous pouvez créer des projets dans le dossier dans lequel vous voulez. Étrange. Mais cela a aidé dans mon cas.
Cela m’est arrivé lorsque j’essayais de fusionner deux solutions ... le problème était que l’espace de nommage n’était pas bien configuré dans tous les fichiers ... une partie de l’histoire résolue avec la réponse de @Kevin Aenmey mais beaucoup d’autres ... non!
le seul moyen pour moi était donc de rechercher l’ancien espace de noms dans l’ensemble de la solution et de les remplacer tous par un nouvel espace de noms. Peut-être pas la meilleure option, mais en cas de malchance, Nice
Dans notre cas, supprimer le contenu d'un site intranet publié et republier le projet qui fonctionnait correctement dans le débogage corrigeait le problème.
J'ai eu ce problème après avoir ajouté un nouveau projet à ma solution. La solution construite, pas de problème - mais a ensuite été bombardé au moment de l'exécution.
Il s’est avéré que le nouveau projet était configuré par défaut pour cibler .NET 4.6.1, alors que tout le reste dans ma solution cible .NET 4.5.
Le changement de l'infrastructure cible dans le nouveau projet en .NET 4.5 pour correspondre aux autres a résolu le problème.
(merci de ne pas avertir les gars de Microsoft)
Cette erreur survient lorsque l'espace de noms est renommé.
-
- Aller dans le dossier Explorer (Ne pas utiliser Solution Explorer). Trouver le fichier Global.asax
.
- Ouvrir le fichier (dans le Bloc-notes/n’importe quel éditeur) et changer Remplacer Ancien espace de noms nom Nouvel espace de noms
- Save Cela devrait fonctionner maintenant ..
J'ai eu le même problème et c'est parce que je n'ai pas construit la solution. Erreur de débutant. Juste: construire la solution (Ctrl + Maj + b)
Dans ma situation, j'avais la même erreur. J'utilise git avec l'arbre source pour le contrôle de version. Dans mon cas, git avait été activé dans le projet, mais je n'utilisais pas Visual Studio pour mettre en scène mes commits, etc. J'utilisais l'arbre source. Le problème, c'est que Visual Studio a mis la ligne suivante dans mon fichier gitignore :
#Build Results
[Bb]in/
C'était ignorer le dossier bin afin que mon dossier bin ne soit jamais transmis au serveur. Une fois que j'ai supprimé cette ligne, que j'ai validé tout le répertoire bin et que je l'ai transféré sur le serveur, puis sur le serveur, il a tiré le git. Le dossier bin est arrivé et tout a commencé à fonctionner!
BTW, ma section finale du fichier gitignore (#Build results) a fini par ressembler à ceci:
# Build results
[Dd]ebug/
[Rr]elease/
x64/
build/
[Oo]bj/
Je ne suis toujours pas sûr si le dossier Obj doit être envoyé au serveur, mais tout fonctionne correctement maintenant.