Функция Application_error периодически перехватывает «Файл не существует» - PullRequest
9 голосов
/ 14 июля 2010

Я использую событие Application_Error для обработки исключений, и оно корректно перехватывает почти все исключения.Однако на некоторых страницах он ловит с исключением «Файл не существует», и я не могу найти, где именно это происходит.Когда я комментирую код Application_Error, удивительно, что веб-страница работает нормально.

Моя главная проблема заключается в том, как можно отследить строку кода, откуда она перешла к функции Application_Error.

Ответы [ 4 ]

15 голосов
/ 28 января 2011

Используйте HttpContext.Current.Request.Url.ToString() для просмотра пути к отсутствующему файлу.

0 голосов
/ 21 октября 2014

Чтобы увидеть проблему, в событии Application_Error файла Global.asax укажите:

public void Application_Error(object sender, EventArgs e) {
        // Code that runs when an unhandled error occurs
        Exception ex = Server.GetLastError();
        Console.WriteLine("Application_Error() -> " + ex.Message + "\n\nURL: " + HttpContext.Current.Request.Url, ex);

        if (ex is HttpUnhandledException)
            Context.ClearError(); // System.NullReferenceException
    }
0 голосов
/ 26 апреля 2011

Прямо в моем случае также в Jquery во многих местах используется фоновое изображение, которое не существует, поэтому этот тип ошибки.

0 голосов
/ 14 июля 2010

ууууу ....... только сейчас решил мою проблему. Во время отладки я поместил одну контрольную точку в код Appilcation_Error, и когда выполнение достигло ее, я мог видеть путь к изображению (путь был неправильный), который загружался в то время и который вызывает исключение. :)

...