我一直有这个问题了。我无法从代码隐藏文件中加载类型。
例如:
<%@ 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
为什么我收到错误?我一直想弄清楚这一点。注意:这是一个网站项目,而不是一个网络应用程序。
谢谢你们!
答案 0 :(得分:2)
从我的头顶开始...
1)您是否尝试过添加Src属性?
Src="~/App_Code/GlobalAsax.cs"
2)您是否预先编译了代码隐藏类?
3)您确定路径已解析到正确的路径吗?您是否尝试过使用绝对路径来确定?
答案 1 :(得分:0)
尝试使用相对文件路径而不是urbe作为codebehind属性。与App_Code\GlobalAsax.cs
答案 2 :(得分:0)
在我完成的所有工作中,Global.asax不使用codebehind
指令中的Application
属性。对于Inherits
属性,请确保提供完全限定的类名(带有完整的命名空间)。这非常依赖于您在Project属性中设置的内容。查看“Root namespace”值以查看是否需要在Inherits
属性中包含更多内容。
注意:“Root namespace”字段的确切名称和位置可能因您使用的Project类型和Visual Studio版本而有所不同。
答案 3 :(得分:0)
更改Web项目的输出路径。设置为bin \ debug但除非输出路径设置为“bin”
,否则Web项目不起作用答案 4 :(得分:0)
当代码文件在App_Code中时,您不需要指定CodeBehind,请尝试:
<%@ Application Inherits="BaseGlobal.GlobalAsax" %>