分析器错误:"/"应用程序中的服务器错误

Ars*_*nny 37 code-behind asp.net-mvc-3

我收到以下错误:"解析服务此请求所需的资源时出错.请查看以下特定的解析错误详细信息并适当修改源文件."

Parser Error Message: `Could not load type 'nadeem.MvcApplication'`.
Source Error:  Line 1:  <%@ Application Codebehind="Global.asax.cs" Inherits="nadeem.MvcApplication" Language="C#" %>
Run Code Online (Sandbox Code Playgroud)

Kev*_*mey 56

右键单击您的Global.asax文件,然后单击View Markup.您将看到该属性Inherits="nadeem.MvcApplication".这意味着您的Global.asax文件正在尝试从该类型继承nadeem.MvcApplication.

现在双击您的Global.asax文件,看看文件中指定的类名Global.asax.cs是什么.它应该看起来像这样:

namespace nadeem
{
    public class MvcApplication: System.Web.HttpApplication
    {
    ....
Run Code Online (Sandbox Code Playgroud)

如果没有,那么您将收到您收到的错误.文件Inherits属性中的值Global.asax必须与派生自的类型匹配System.Web.HttpApplication.


小智 39

当我将项目源下载到两个位置时,我遇到了同样的问题.问题原来是通过下载源它改变了站点虚拟目录位置,因为我没有重建第二个源,那里没有DLL.

  1. 要解决此问题,请打开要构建的项目并转到网站属性(项目菜单)
  2. 为项目创建虚拟目录.
  3. 重建项目.

固定

  • 感谢上帝,我偶然发现了这一点.否则演示将是一场灾难...... (4认同)

小智 9

在我的解决方案中完成所有项目以将编译设置为输出到bin\debugbin\release之后,这个问题就开始了.我终于意识到启动项目(即带有global.asax的项目)只需输出到bin.


hea*_*150 8

通常,您创建一个MVC项目,Global.asax标记具有以下内容:

<%@ Application Codebehind="Global.asax.cs" Inherits="StackOverflow.MvcApplication" Language="C#" %>
Run Code Online (Sandbox Code Playgroud)

你有没有将Global.asax.cs放在另一个项目中?如果从Global.asax中删除CodeBehind ="..."声明并更改Inherits ="..."声明,则引用正确的名称空间和类名,因为它在Global.asax.cs文件中定义.

如果您还没有移动它,请尝试使用Web项目中的上下文菜单在Visual Studio中清理然后重建项目.当我收到此错误时,这对我有用.


小智 7

  1. 转到项目属性
  2. 在页面底部查看输出路径
  3. 将路径更改为:bin \
  4. 保存并运行项目


eki*_*mpl 6

该案例已解决,但如果您的项目构建到IIS_Virtual_Directory\bin之外的其他目录并且缺少dll,则可能会出现此错误.


Hum*_*Ali 0

对我来说,从 BIN 文件夹中删除 dll,然后构建项目是有效的