62 votes

Impossible de charger le type 'XXX.Global'.

Je suis en train de migrer un projet de ASP.NET 1.1 à ASP.NET 2.0 et je continue à rencontrer cette erreur.

Je n'ai pas vraiment besoin de Global car je n'y ajoute rien, mais après l'avoir supprimé, j'obtiens plus d'erreurs.

0 votes

85voto

Pieter van Ginkel Points 17057

La raison pour laquelle je rencontre ce problème est que je modifie la configuration de la construction. Lorsque je configure un projet web pour x86 il change le chemin de sortie en bin\x86\Debug . Cependant, le chemin de sortie devrait être bin et le serveur web ne trouvera pas les binaires à cause de cela.

La solution consiste donc à modifier le chemin de sortie du site web pour le ramener à bin après avoir modifié la configuration de la construction.

29 votes

+1 C'est probablement la meilleure réponse jamais fournie sur stack overflow. Les mots seuls ne suffisent pas à exprimer ma gratitude pour cette réponse exceptionnellement utile et superbement formulée. Des cris de joie ont retenti à l'autre bout du monde lorsque cette réponse a été lue et appliquée avec de magnifiques niveaux de réussite et de sincères sensations de soulagement. Une bière fraîche a été spécialement mise de côté pour notre cher, cher guide, Pieter. Puissiez-vous, Monsieur, vivre une très longue et très heureuse vie. Une contribution absolument merveilleuse. Tout simplement merveilleuse. Merci.

6 votes

Merci. La Nouvelle-Zélande est un peu loin pour moi, mais si je suis dans le coin, je vous prendrai au mot.

0 votes

Je tiens à ajouter mes félicitations pour cette excellente réponse.

57voto

pete blair Points 1157

Il y a plusieurs choses que vous pouvez essayer, cela semble arriver souvent et la solution varie pour tout le monde.

  • Si vous utilisez toujours le répertoire virtuel IIS, assurez-vous qu'il pointe vers le bon répertoire et vérifiez également la version d'ASP.NET sur laquelle il est réglé, assurez-vous qu'il est réglé sur ASP.NET 2.0.

  • Effacez tous vos bin/debug/obj. Faites un Solution propre et ensuite un Solution de construction .

  • Vérifiez votre fichier de projet dans un éditeur de texte et assurez-vous que l'endroit où il cherche le fichier global est correct, parfois il ne change pas le répertoire.

  • Supprimez le global de la solution et rajoutez-le après avoir sauvegardé et fermé. Assurez-vous que toutes les balises script du fichier ASPX pointent vers la bonne après.

  • Vous pouvez essayer d'exécuter le Convertir en application Web qui refait l'ensemble du code et des fichiers du projet.

  • IIS Express utilise le mauvais répertoire rac racine (voir réponse dans VS 2012 lance l'application en fonction d'un mauvais chemin )

Assurez-vous de fermer les VS après les avoir essayés.

Ce sont des choses que je sais devoir essayer. J'espère que l'une d'entre elles fonctionnera pour vous.

1 votes

Oui, je les ai utilisés au fil du temps et l'un d'eux résout généralement le problème.

1 votes

C'est en supprimant et en réinsérant Global.asax que j'ai trouvé la solution.

0 votes

Mes dossiers Bin et Obj étaient exclus du projet... j'ai juste utilisé le bouton "Show all files" dans l'explorateur de solutions, puis j'ai fait un clic droit et j'ai inclus ces dossiers. Merci.

5voto

Mark Glorie Points 2300

J'ai découvert que cela se produit lorsque le Global.asax.(vb|cs) n'a pas été converti correctement en classe partielle.

La solution la plus rapide consiste à entourer le nom de la classe "Global" de [crochets] comme suit (en VB.Net) :

Public Class [Global]
    Inherits System.Web.HttpApplication
    ...

0 votes

J'ai lu cela ailleurs, mais tous les miens ne sont pas partiels et ils fonctionnent.

5voto

user1444662 Points 31

La suppression du fichier global.asax existant et l'ajout d'un nouveau fichier éliminent cette erreur. Cela a fonctionné pour moi à plusieurs reprises.

0 votes

Merci. Votre conseil m'a fait gagner beaucoup de temps.

3voto

bhrionn Points 21

Si vous utilisez Visual Studio 2010, cette erreur peut se produire lorsque vous modifiez le type de déploiement de la configuration. Les 3 types sont x86, x64 et mode mixte. La modification de la configuration en mode mixte pour tous les projets de la solution devrait résoudre le problème. N'oubliez pas de supprimer les fichiers bin et Lib et de modifier la sortie du répertoire temporaire si vous utilisez un site Web ASP.NET.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X