Каков принятый способ обработки ошибок во время асинхронных обратных передач в ASP.NET? - PullRequest
1 голос
/ 06 января 2010

У нас есть страница ASP.NET, которая использует панель обновления для частичной обратной передачи страницы. На стороне сервера постбэк выполняет некоторую работу с базой данных и обновляет несколько элементов пользовательского интерфейса. Код базы данных содержится в нескольких транзакциях, поэтому состояние все равно будет согласованным, если будет выдано исключение. Сейчас мы работаем над некоторым кодом обработки ошибок, и моей первой мыслью было записать выданное исключение, перезагрузить последнее согласованное состояние пользовательского интерфейса и показать какое-то модальное всплывающее окно или другой элемент пользовательского интерфейса с кратким сообщением об ошибке для пользователя (это это страница внутренней сети, поэтому мы автоматически получаем уведомление об ошибке, и пользователи знают, где нас найти:)

Это хорошая идея? Какие альтернативы будут лучше для наших конечных пользователей?

1 Ответ

3 голосов
/ 06 января 2010

Я бы регистрировал исключение и перенаправлял на страницу с ошибкой («Извините, мы облажались»).

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

Обратите внимание, что стандартные механизмы сделают большую часть этого за вас. Назначьте страницу с ошибкой, и ASP.NET перенаправит туда сообщение об ошибке. Кроме того, необработанные исключения будут регистрироваться ASP.NET Health Monitoring в журнале событий.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...