简体   繁体   中英

Global.asax can't find code-behind class

I keep getting this error when I try to run a web app that I have inherited. It was written in 2010 for C# 3.5 and uses Mvc 2. I have installed the necessary libraries however I get this error.

Error 1 Could not load type 'AdminConsole.MvcApplication'. C:\path\to\my\app\Global.asax 1

Global.asax.cs looks like this:

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);
        }
    }
}

And Global.asax looks like this: <%@ Application Inherits="AdminConsole.MvcApplication" Language="C#" %>

Add Codebehind="Global.asax.cs" to the Markup file (Global.asax):

From:

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

To:

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

确认项目已配置为将您的 DLL 放入/bin文件夹,而不是/bin/x86/Debug/ (或类似文件夹)。

My problem was that I had accidentally created a web site instead of a web application . Once I recreated the project it worked fine.

As written by @FMM

Verify that the project is configured to place your DLLs into the /bin folder and not in /bin/x86/Debug/ (or similar).

I could check, and resolve my issue, changing the configuration manager. Then, changing the platform, from "x86" to "Any CPU".

1 - configuration manager:

1 - 配置管理器

2 - x86 to Any CPU:

2 - x86 到任何 CPU

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM