Rambler's Top100
Главная
Новости
Статьи
Форумы
Книги
Коды
Сообщество
Блоги
О нас
 

Логин

Email:
  Пароль:

Войти
Зарегистрироваться
Забыл пароль

Поиск

 Искать :
 
Вперед

Сообщение

mikeduglas


Принципиальный молчун

Зарегистрирован:
22 December 2006
Сообщения: 6
Примеры кода: 0
 

Вынесение множества catch() в отдельный метод

26 January 2007 14:43  


Привет.

Есть много мест примерно с таким кодом:

try
{
// тут что-то делаем
}
catch (NullReferenceException ex)
{
// тут как-то реагируем
}
catch (ArgumentException ex)
{
// тут как-то реагируем
}
catch (Exception ex)
{
// тут как-то реагируем, а затем генерим исключение снова
throw ex;
}
Так вот, возникла идея вынести все catch в один метод, примерно так:

protected virtual void MyExceptionHandler(Exception ex)
{
// некритические исключения
if (ex is NullReferenceException)
{
// тут как-то реагируем
}
if (ex is ArgumentNullException)
{
// тут как-то реагируем
}
else if (ex is InvalidOperationException)
{
// тут как-то реагируем
}
// Критическое исключение
else if (ex is Exception)
{
// тут как-то реагируем, а затем генерим исключение снова
throw ex;
}
}
и пользоваться им так:

try
{
// тут что-то делаем
}
catch (Exception ex)
{
MyExceptionHandler(ex);
}

Стоит так делать? С одной стороны, вроде логично, а с другой... с другой я такого нигде ещё не встречал (правда, для NET пишу совсем недавно).
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>

Данное сообщение получено с сайта RSDN
Наверх
  



Общие вопросы программирования на ASP.NET

 Вынесение множества catch() в отдельный методmikeduglas  26 January 2007 14:43
 Re: Вынесение множества catch() в отдельный методАноним  30 January 2007 15:04
 Re[2]: Вынесение множества catch() в отдельный методrameel  30 January 2007 15:37
 Re[3]: Вынесение множества catch() в отдельный методАноним  30 January 2007 15:54
 Re: Вынесение множества catch() в отдельный методVladD2  30 January 2007 04:30
 Re[2]: Вынесение множества catch() в отдельный методMike Chaliy  30 January 2007 12:35
 Re[2]: Вынесение множества catch() в отдельный методmikeduglas  30 January 2007 10:48
 Re[3]: Вынесение множества catch() в отдельный методVladD2  30 January 2007 19:35
 Re[3]: Вынесение множества catch() в отдельный методMike Chaliy  30 January 2007 12:31
 Re[4]: Вынесение множества catch() в отдельный методmikeduglas  31 January 2007 11:46
 Re[5]: Вынесение множества catch() в отдельный методMike Chaliy  31 January 2007 15:30
 Вынесение множества catch() в отдельный методsergun  28 January 2007 09:37
 Re: Вынесение множества catch() в отдельный методCloser  26 January 2007 19:47
 Re[2]: Вынесение множества catch() в отдельный методmikeduglas  29 January 2007 10:52
 Re: Вынесение множества catch() в отдельный методTK  26 January 2007 15:32
 Re[2]: Вынесение множества catch() в отдельный метод_d_m_  28 January 2007 05:50
 RE: Re: Вынесение множества catch() в отдельный методAL  26 January 2007 17:05
 
Наш Киев

Apartments for Rent

Rambler's Top100
Рейтинг@Mail.ru
Идея: Dimon aka Manowar Программирование: Dimon aka Manowar Дизайн: Dan Lebedev
Хостинг от компании Parking.ru
Карта сайта