Расширитель всплывающего окна зависает при исключении кода программной части

В проекте C#/ASP.NET мы используем ajax modalpopupextender для отображения пользователям сообщения «Обработка...». Мы отображаем его с помощью вызова Javascript в коде страницы ASP.NET. Затем в коде мы выполняем некоторую операцию с базой данных и снова скрываем всплывающее окно, используя «popup.hide();»

Проблема в том, что когда в коде возникает исключение, всплывающее окно по-прежнему отображается, и приложение не обрабатывает ошибки в соответствии с тегом «customErrors» файла web.config.

Любая идея о том, как справиться с такого рода проблемами?

Спасибо, Дэвид


person davandries    schedule 15.09.2009    source источник


Ответы (1)


Можете ли вы обернуть код, который вы используете, в try catch и убедиться, что вы вызываете, наконец, popup.hide?

person Kevin LaBranche    schedule 15.09.2009
comment
Звучит как решение... Но как насчет необработанных исключений? - person davandries; 15.09.2009
comment
Я пробовал это, и это, к сожалению, не работает. У него странное поведение. Строка кода программной части popup.hide() кажется выполненной, но на экране ничего не меняется, тогда как всплывающее окно корректно исчезает, когда нет исключений... :S - person davandries; 15.09.2009
comment
Интересно... Ну, к сожалению, это все, что я могу придумать на этот счет. Похоже, вы не единственный, кто заметил это без реального ответа.... stackoverflow.com/questions/1095686/ вздох - person Kevin LaBranche; 15.09.2009
comment
Я пробовал с атрибутом ‹scriptmanager AllowCustomErrorsRedirect›, но страница по-прежнему зависла в моем modalpopupextender. - person davandries; 15.09.2009