15

上下文中的项目是:

  • ASP .NET 网络应用程序
  • .NET 框架:4
  • 平台目标:x86
  • IDE:Visual Studio 2010 Ultimate SP1
  • 以 ASP .NET 作为启动项目的解决方案中的多个项目。

直到昨天,它已经生产了几个月,没有出现任何故障。我清理了[Global.asax]文件(删除了未使用的 using 语句、重构等),运行了解决方案并得到了以下错误:

说明:解析服务此请求所需的资源时出错。请查看以下特定的解析错误详细信息并适当地修改您的源文件。
解析器错误消息:无法加载类型“CloudTech.ATS.WebClient.Global”。
源文件: /global.asax 行: 1
源错误:第 1 行: <%@ Application CodeBehind="Global.asax.cs" Inherits="CloudTech.ATS.WebClient.Global" Language="C#" %>

错误快照

这是Global.asax 标记:

<%@ Application CodeBehind="Global.asax.cs" Inherits="CloudTech.ATS.WebClient.Global" Language="C#" %>

这是Global.asax.cs 代码(已删除内部代码):

using System;
using System.Linq;

namespace CloudTech.ATS.WebClient
{
    public class Global: System.Web.HttpApplication
    {
    }
}

在与此错误搏斗一段时间后,我搜索,重新启动计算机,对解决方案执行完全清理,强制重建但无济于事。沮丧的是,我最终只将 Web 应用程序目标更改为“Any CPU”并且它起作用了。不幸的是,“任何 CPU”不是解决手头问题的选项或解决方案。将其更改回“x86”会带来相同的错误。这发生了一次,从那时起,目标平台或调试/发布配置的组合不再起作用(同样的错误)。

此外:

  • 我的开发机器都是x64的。
  • 检查解决方案,让多个同事在他们的机器(x86 和 x64)上进行测试,结果相同。
  • 将整个项目从3天前恢复到干净状态,错误依旧!
  • 经过验证,绝对没有对 Web.config 文件或解决方案中的任何其他文件进行任何更改。

最后,我的开发系统的唯一变化是 Windows 更新(定期安全更新),我在没有更新的系统上尝试了该解决方案,结果相同。

任何帮助,将不胜感激。

4

4 回答 4

23

清理解决方案和删除程序集对后续构建没有影响。我的解决方案是将 Web 应用程序的项目设置中的输出路径更改为 Bin(而不是 bin/x86/Debug)。

来源:- “无法加载类型 [Namespace].Global”让我很伤心

于 2013-05-18T05:40:32.243 回答
9

我们在这里遇到了类似的问题。

我们所做的只是关闭 IDE。并再次打开它,然后构建,然后运行。

非常令人沮丧和困惑。

于 2013-11-28T09:43:13.837 回答
5

常规 ASP.NET Web 应用程序在解决方案文件夹中有 2 个文件:

  1. 全球.asax
  2. 全球.asax.cs

确保 Global.asax.cs 中的类:

namespace YourWebAppNamespace
{
  public class MvcApplication : HttpApplication
  {
     ...

在 Global.asax 中具有相同/正确的名称:

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

当我手动更改Global.asax.cs文件中的类名时,我遇到了这个问题,所以结果我和你有同样的错误,从我的角度来看,它应该提供更多信息。我知道这个问题已经得到解答,但也许我的案例对某人有帮助。

于 2017-04-27T14:50:59.700 回答
4
  • 使用记事本,编辑 Global.asax 文件以确保它继承自 Web 应用程序的命名空间

  • 检查项目属性的程序集名称和默认命名空间

  • 从 bin 目录中删除旧程序集(旧项目程序集可能会导致问题!)

    祝你好运!

于 2015-09-24T17:37:18.163 回答