Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как грамотно обрабатывать ошибки / 2 сообщений из 2, страница 1 из 1
13.05.2004, 18:55
    #32517002
Old Nick
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как грамотно обрабатывать ошибки
Нарисовал страничку с логином. Скуль возвращает ошибку если что не так. Без обработки ошибка на клиента возвращается сильно длинной.

Сделал так: в вебметоде запрос выполняется в try catch и сообщение об ошибке ложится в приватную переменную у сервиса.

На странице вызываю вебметод тоже в блоке try catch, потом вебметодом беру ошибку, а она пустая, хотя сервис ее заполнял. Как так?

Как еще по-другому можно обрабатывать ошибки?
...
Рейтинг: 0 / 0
13.05.2004, 19:32
    #32517054
nex
nex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как грамотно обрабатывать ошибки
1) Можно написать свой Exception класс, который будет возврашать то, что тебе нужно
2) Можно просто в catch() {} выводить то сообщение, которое тебе подходит.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
try {
   ValidateUser(username, password);
}
catch (OleDbException) {
   lbMessage.Text = "Login failed! Invalid username or password."
   // or
   // Response.Write ("Login failed! Invalid username or password.");
...
...
}

Для этого ValidateUser() должен ловить OleDbException у себя где то, и бросать ее дальше.

Можно еще ErrorCode смотреть:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
try {
   ValidateUser(username, password);
}
catch (OleDbException oe) {
   switch (oe.ErrorCode) {
      case ...:  // тут нужно ошибки скуль сервера смотреть.. не помню :)
         lbMessage.Text = "Login failed! Invalid username or password."

      case ...:
          ...
   }
...
...


Но это лучше делать в ValidateUser, и бросать свои Exception-ы в зависимости от ошибки, a в страничке с логином их ловить
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как грамотно обрабатывать ошибки / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]