0

我已经有一段时间了这个问题。我无法从文件后面的代码中加载类型。

例如:

<%@ Application Codebehind="~/App_Code/GlobalAsax.cs" Inherits="BaseGlobal.GlobalAsax" Language="C#" %>

这是我的 c# GlobalAsax.cs 文件:

namespace BaseGlobal
{
    public class GlobalAsax : System.Web.HttpApplication
    {
        //code in here... 
    }

}

具体错误:

无法加载类型 BaseGlobal.GlobalAsax

为什么我会收到错误消息?我一直在试图弄清楚这一点。注意:这是一个网站项目,而不是网络应用程序。

多谢你们!

4

5 回答 5

2

只是从我的头顶...

1)您是否尝试过添加 Src 属性?

Src="~/App_Code/GlobalAsax.cs"

2)您是否预编译了代码隐藏类?

3)您确定路径已解析为正确的路径吗?您是否尝试过使用绝对路径来确保?

于 2013-01-31T14:53:45.780 回答
0

尝试对 codebehind 属性使用相对文件路径而不是 url。喜欢App_Code\GlobalAsax.cs

于 2013-01-28T16:23:53.597 回答
0

更改 Web 项目的输出路径。设置为 bin\debug,但除非输出路径设置为简单的“bin”,否则 Web 项目不起作用

于 2013-01-31T15:04:46.583 回答
0

当代码文件在 App_Code 中时,您不需要指定 CodeBehind,试试这个:

<%@ Application Inherits="BaseGlobal.GlobalAsax" %>
于 2013-01-31T15:05:16.453 回答
0

在我所做的所有工作中,Global.asax 没有使用指令codebehind中的属性。Application对于Inherits属性,请确保您提供了完全限定的类名(带有完整的命名空间)。这非常依赖于您在项目属性中设置的内容。查看“根名称空间”值,看看是否需要在Inherits属性中包含更多内容。

注意:“根命名空间”字段的确切名称和位置可能会根据您使用的项目类型和 Visual Studio 版本而有所不同。

于 2013-01-31T14:52:34.033 回答