Ошибка разбора Global.asax после незначительного изменения и возврата к предыдущей версии

Проект в контексте:

ASP .NET Web Application.NET Framework: 4Платформа Цель: x86IDE: Visual Studio 2010 Ultimate с пакетом обновления 1Несколько проектов в решении с ASP .NET является стартовым проектом.

Он был в производстве в течение нескольких месяцев без глюков до вчерашнего дня. Я убрала[Global.asax] файл (удалил неиспользуемые с помощью операторов, рефакторинг и т. д.), запустил решение и получил следующую ошибку:

Описание: Произошла ошибка во время анализа ресурса, необходимого для обслуживания этого запроса. Пожалуйста, просмотрите следующую конкретную информацию об ошибке разбора и измените исходный файл соответствующим образом.

Сообщение об ошибке парсера: Не удалось загрузить типCloudTech.ATS.WebClient.Global.

Исходный файл: /global.asaxСтрока 1

Ошибка источника: Строка 1:

ЗдесьГлобальная разметка asax:


ЗдесьGlobal.asax.cs Code (с удаленным внутренним кодом):

using System;
using System.Linq;

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

После некоторой борьбы с этой ошибкой я искал, перезагружал свой компьютер, выполнял полную очистку решения, перестраивал принудительно, но безуспешно. Разочарованный, я наконец изменил только цель веб-приложения на "Любой процессор " и это сработало. К несчастью, "Любой процессор " это не вариант или решение данного вопроса. Меняя его обратно на "x86" возвращает ту же ошибку. Это произошло один раз, и с тех пор ни одна комбинация целевой платформы или конфигурации отладки / выпуска больше не работает (та же ошибка).

Более того:

Мои машины для разработки все x64.Проверено в решении, было несколько тестов коллег на своих машинах (и x86 и x64) с одинаковым результатом.Восстановил весь проект в чистое состояние с 3 дня назад, и ошибка все еще сохраняется!Проверено, что никаких изменений в файлах Web.config или любых других файлах в решении по этому вопросу не было.

Наконец, единственное изменение в моих системах разработки - это обновления Windows (регулярные обновления безопасности), и я попробовал решение на системах без обновлений с теми же результатами.

Любая помощь будет оценена.

Ответы на вопрос(4)

Решение Вопроса

орок. Моим решением было просто изменить путь вывода в настройках проекта для веб-приложения на Bin (вместо bin / x86 / Debug).

Источник:- "Не удалось загрузить тип [Пространство имен] .Global " причиняя мне горе

 James Pusateri04 окт. 2017 г., 23:12
Я предпочитаю хранить его в папке отладки, но в некоторых случаях меняя его на bin, затем обратно на bin \ debug работает. Просто беги между ними. Это изменение пути, которое, кажется, вытряхивает комбо IDE / IIS из этого фанка.
 Raheel Khan18 мая 2013 г., 07:47
Боже мой, это было # @! @ # Расстраивающим. Спасибо Спасибо спасибо! Я'Я удивлен, что это поведение не было исправлено в SP1 для веб-проектов.

и мы просто закрыли IDE. и снова откройте его, а затем соберите, затем запустите.

довольно расстраивает и сбивает с толку.

 Raheel Khan28 нояб. 2013 г., 14:06
В моем случае перезапуск IDE по какой-то причине не помог.
 AceMark24 окт. 2016 г., 07:50
@kame, какую версию вы используете? может быть другой подход для IDE, поскольку они обновляются для каждой версии / IDE.
 AceMark28 нояб. 2013 г., 15:25
то, что мы сделали, это очистить, пересобрать, закрыть IDE, открыть IDE и запустить.
 Mahesh11 авг. 2016 г., 23:52
Я строю с правами администратора.
используя Блокнот, отредактируйте файл Global.asax, чтобы он наследовал от вашего веб-приложения.пространство именпроверьте свойства проекта для его имени сборки и пространства имен по умолчанию

т вызвать проблемы!)

удачи!

 Matt08 нояб. 2015 г., 04:25
хотя плохо написано, на самом деле это правильное решение проблемы, с которой я столкнулся. Это было отрицательное, и я проголосовал за это. Очевидно, что global.asax должен находиться в том же пространстве имен, что и веб-проект. Я изменил пространство имен своих веб-проектов, и global.asax использовал немного другое, создавая эту ошибку. Убедитесь, что они синхронизированы по сути то, что говорит этот ответ.

Global.asaxGlobal.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 файл, так что для результата у меня была та же ошибка, что и у вас, и с моей точки зрения, она должна быть более информативной. Я знаю, что на этот вопрос уже был дан ответ, но, возможно, мой случай может быть полезным для кого-то.

Ваш ответ на вопрос