Ведущий Диалог
Зарегистрирован: 29 November 2007
Сообщения: 144
Примеры кода: 0
|
Re: RE: Обработка исключений в .net (вопрос знатокам). |
23 June 2008 16:29 |
|
|
|
|
Vladimir TТогда можно поступить следующим образом:
Сгенерировать новое исключение, в котором его Message будет следующим:
Exception e = new Exception(ex.Message + " : " + exd.Message, ex);
При этом Messages обоих исключений будут видны:
void Test()
{
try
{
DoSmth();
}
catch(Exception ex)
{
try
{
DoSmthElse();
}
catch (Exception exd)
{
Exception e = new Exception(ex.Message + " : " + exd.Message, ex);
throw e;
}
throw ex;
}
}Владимир Тришин
http://programmer-kharkov.com
Только лучше сделать свой тип исключений MyBussinessException:Exception и в нем в InnerException положить то исключение, которое сгенерирует DoSmthElse(); а в какое-либо свойство положить то исключение, которое сгенерирует DoSmth();
Т.о. при перехвате ошибки выше можно перехватить его по типу - и сразу узнать, в каком месте оно было сгенерировано и соответственно обработать
|
|