Ошибка Global.asax parse после незначительных изменений и возврата к предыдущей версии
Проект в контексте:
- Веб-приложение ASP.NET
- .NET Framework: 4
- Цель платформы: x86
- IDE: Visual Studio 2010 Ultimate SP1
- Несколько проектов в решении с ASP.NET, являющимся стартовым проектом.
Он был в производстве месяцами без сбоев до вчерашнего дня. Я очистил файл [Global.asax]
(удалил неиспользуемые операторы, рефакторировал и т.д.), Запустил решение и получил следующую ошибку:
Описание: Произошла ошибка во время разбора ресурса, необходимого для обслуживания этого запроса. Ознакомьтесь со следующими подробными сведениями о синтаксическом анализе и соответствующим образом измените исходный файл.
Сообщение об ошибке Parser: Не удалось загрузить тип "CloudTech.ATS.WebClient.Global".
Исходный файл:/global.asax Линия: 1
Ошибка источника: Линия 1: <%@ Application CodeBehind="Global.asax.cs" Inherits="CloudTech.ATS.WebClient.Global" Language="C#" %>
![Error snapshot]()
Вот Разделение 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
{
}
}
После долгой борьбы с этой ошибкой я обыскал, перезапустил свой компьютер, выполнил полную очистку решения, принудительно перестроил, но безрезультатно. Разочарованный, я, наконец, изменил только цель веб-приложения на "Любой процессор", и он сработал. К сожалению, "любой процессор" не является вариантом или решением проблемы. Изменение его на "x86" возвращает ту же ошибку. Это произошло один раз, и с тех пор никакая комбинация целевой платформы или конфигурации отладки/выпуска не работает (такая же ошибка).
Далее
- Мои машины разработки - все x64.
- Проверено в решении, если несколько коллег проверили на своих машинах (как x86, так и x64) с тем же результатом.
- Восстановил весь проект до чистого состояния с 3 дней назад, и ошибка все еще сохраняется!
- Проверено абсолютно без изменений в файлах Web.config или любых других файлах в решении.
Наконец, единственное изменение в моих системах разработки - это обновления для Windows (регулярные обновления безопасности), и я пробовал решение в системах без обновлений с теми же результатами.
Любая помощь будет оценена.
Ответы
Ответ 1
Очистка решения и удаление сборок не повлияли на последующие сборки. Мое решение состояло в том, чтобы просто изменить выходной путь в настройках проекта для веб-приложения на Bin (а не bin/x86/Debug).
Источник: -
"Невозможно загрузить тип [пространство имен].Global" вызвав мое горе
Ответ 2
у нас была аналогичная проблема.
и мы только что закрыли IDE. и откройте его снова, а затем выполните, затем запустите.
довольно расстраивает и запутывает.
Ответ 3
Ответ 4
Обычное веб-приложение ASP.NET имеет 2 файла в папке решения:
- Global.asax
- Global.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
, так как для результата я имел ту же ошибку, что и вы и с моей точки зрения, он должен быть более информативным. Я знаю, что на этот вопрос уже был дан ответ, но, возможно, мое дело может быть полезным для кого-то.