Global.asax ne trouve pas la classe code-behind

Cette erreur persiste lorsque j’essaie de lancer une application Web dont j’ai hérité. Il a été écrit en 2010 pour C # 3.5 et utilise MVC 2. J’ai installé les bibliothèques nécessaires, mais je reçois cette erreur.

Erreur 1 Impossible de charger le type ‘AdminConsole.MvcApplication’. C: \ chemin \ vers \ mon \ app \ Global.asax 1

Global.asax.cs ressemble à ceci:

using System.Web.Mvc; using System.Web.Routing; namespace AdminConsole { // Note: For instructions on enabling IIS6 or IIS7 classic mode, // visit http://go.microsoft.com/?LinkId=9394801 public class MvcApplication : System.Web.HttpApplication { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( "Default", // Route name "{controller}.aspx/{action}/{id}", // URL with parameters new { controller = "Entitlement", action = "Index", id = UrlParameter.Optional } // Parameter defaults ); } protected void Application_Start() { AreaRegistration.RegisterAllAreas(); RegisterRoutes(RouteTable.Routes); } } } 

Et Global.asax ressemble à ceci:

Ajoutez Codebehind="Global.asax.cs" au fichier de Markup (Global.asax):

De:

 <%@ Application Inherits="AdminConsole.MvcApplication" Language="C#" %> 

À:

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

Vérifiez que le projet est configuré pour placer vos DLL dans le dossier /bin et non dans /bin/x86/Debug/ (ou similaire).

Mon problème était que j’avais accidentellement créé un site Web au lieu d’une application Web. Une fois que j’ai recréé le projet, cela a bien fonctionné.