我得到了错误

无法加载类型mvcapapplication

当我试图运行我的网站时。

如何纠正?


当前回答

对我有效的是重新启动Visual Studio。

我尝试手动重建,执行清理和重建,并删除bin文件夹,所有这些都没有工作。我的输出路径已经设置为bin\

其他回答

我陷入了这种境地。我已经阅读并测试了之前给出的所有可能的解决方案。检查构建路径,构建,重建,清理,重新启动IIS和VS2015,重新安装所有nuget包,逐个编译,等等…

我突然想起来VS在系统文件夹中保存了一些ASP临时文件…我想我应该试一试,毕竟没有比这更糟的了。所以我清空了:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files

一切又开始运转了……奇怪的是,这个问题有这么多不同的解决方案……

检查global.asax中提供的信息背后的代码。它们应该正确地指向后面代码中的类。

示例global.asax:

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

背后的示例代码:

   namespace MyApplicationNamespace
    {
        public class MyMvcApplication : System.Web.HttpApplication
        {
            protected void Application_Start( )
            {
                AreaRegistration.RegisterAllAreas( );
                FilterConfig.RegisterGlobalFilters( GlobalFilters.Filters );
                RouteConfig.RegisterRoutes( RouteTable.Routes );
                BundleConfig.RegisterBundles( BundleTable.Bundles );
            }
        }
    }

如果您的IIS Express拥有/正在使用相同的端口分配托管旧的/不同的项目,则在visual studio中运行项目时也会发生这种情况。

若要修复此问题,您可以更改此项目的端口分配或关闭IIS Express。

在我的情况下,问题是我重命名类全局到MvcApplication。当重命名时,它必须在所有地方进行更改,否则应用程序将在给定的命名空间中寻找全局类。

每次我保存一个动态编译的文件(ascx, aspx等)都会遇到这个问题。我等待8-10秒,然后它就消失了。这太烦人了。

我认为这可能是IIS Express问题,所以我在内置的开发服务器中尝试,保存文件后仍然收到它。我正在运行一个MVC应用程序,我也使用T4MVC,也许这是一个因素…