在我的.Net 2.0 Asp.net WebForms应用程序中,我的Global.asax包含以下代码:<%@ Application CodeBehind="Global.asax.cs" Inherits="MyNamespace.Global" Language="C#" %>但是,当我构建时,出现错误提示:无法加载类型'MyNamespace.Global'。这似乎是因为MyNamespace命名空间(在文件Global.asax.cs后面的代码中定义)在Global.asax文件中没有被编译器看到(在R#智能中没有显示。)。原来这是一个很难破解的螺母……任何帮助将不胜感激!注意:Global.asax和Global.asax.cs位于同一文件夹中。注意2:使用csc从vs提示符下编译时,编译正常
3 回答
慕盖茨4494581
TA贡献1850条经验 获得超11个赞
您更改了项目的名称空间吗?我偶尔看到这种情况,我在“项目属性”对话框中更改了名称空间,但Visual Studio并未更改namespace
现有代码文件中的声明。
泛舟湖上清波郎朗
TA贡献1818条经验 获得超3个赞
这是另一本书。当您从同一端口号启动多个Web应用程序时,似乎会发生这种情况。
基本上,我有两个分支需要工作,有一个主分支,一个暂存分支和一个发布分支。当我将分支切换到暂存分支时,我注意到它正在使用相同的端口地址配置,因此我选择对其进行更改。然后,我收到另一个警告,该保留与另一个已配置的应用程序冲突。IIS Express服务器对此很敏感,无论出于何种原因,它都会对配置产生影响。
通过简单地选择第三个未受影响的端口,此问题就消失了,因为它随后将端口映射到了新的目录映射(我的分支在磁盘上的位置不同)。我注意到了这一点,因为我试图更改指向的类型名称,Global.asax
但是即使在重新启动服务器后,类型名称也没有改变,所以很明显,IIS Express部署并未反映出我正在更改的代码。
因此,在您为此失去太多睡眠之前,请尝试更改当前用于运行Web项目的IIS端口号。
- 3 回答
- 0 关注
- 763 浏览
添加回答
举报
0/150
提交
取消