Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / exception:throw vs throw e! / 10 сообщений из 10, страница 1 из 1
04.02.2013, 12:01
    #38135945
netivan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
exception:throw vs throw e!
Элементарный вопрос - в чем отличие throw от throw e? Ответ знают все - в StackTrace. Но тут случайно решил в тестовом приложении написить один метод и удивился. Внимание на экран:
Код: c#
1.
2.
3.
4.
Exeption1:   at Temp.Program.Main(String[] args) in C:\VSProjects\Temp\Temp\Prog
ram.cs:line 69 //тут нет проблем
Exeption from Throw   at Temp.Program.Main(String[] args) in C:\VSProjects\Temp\
Temp\Program.cs:line 84 //с херали?!


Код:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
  try
            {
                try
                {
                    int res = 1 / int.Parse("0");
                }
                catch (Exception ex)
                {
                    Console.WriteLine("Exeption1:"+ex.StackTrace);
                    //CatchAll(ex);
                    throw;
                }
            }
            catch (Exception ex1)
            {
                
                Console.WriteLine("Exeption from Throw"+ex1.StackTrace);
            }
            Console.Read();


Что не так делаю?
...
Рейтинг: 0 / 0
04.02.2013, 12:25
    #38136023
netivan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
exception:throw vs throw e!
але, неужели никто не знает?Вопрос-то 1 класса
...
Рейтинг: 0 / 0
04.02.2013, 12:55
    #38136101
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
exception:throw vs throw e!
Наверное всё-таки строка 74, а не 84:
Код: c#
1.
Exeption from Throw at ... line 74

?
...
Рейтинг: 0 / 0
04.02.2013, 13:04
    #38136121
netivan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
exception:throw vs throw e!
skyANA,

именно 84 - это закрывающая скобка метода Main, я сам в шоке. Может настройка компилятора?
...
Рейтинг: 0 / 0
04.02.2013, 13:08
    #38136132
netivan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
exception:throw vs throw e!
netivan,

хм, если собрать под release - то будет строка 74 (как раз на throw)
...
Рейтинг: 0 / 0
04.02.2013, 13:10
    #38136138
netivan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
exception:throw vs throw e!
но все равно это неправильнО! Хочу видеть правильный StackTrace
...
Рейтинг: 0 / 0
04.02.2013, 13:13
    #38136146
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
exception:throw vs throw e!
netivan,
чтотут не прально, может я не в теме...
...
Рейтинг: 0 / 0
04.02.2013, 13:17
    #38136155
netivan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
exception:throw vs throw e!
Где-то в степи,

блин , а я о чем. Все же дело видимо в настройках компилятора. Поищу сейчас что такое...
...
Рейтинг: 0 / 0
04.02.2013, 13:20
    #38136161
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
exception:throw vs throw e!
netivan,
может это
" При возникновении исключения среда CLR ищет оператор catch, который обрабатывает это исключение. Если выполняющийся в данный момент метод не содержит такого блока catch, то среда CLR рассматривает метод, который вызвал текущий метод"
...
Рейтинг: 0 / 0
04.02.2013, 15:04
    #38136379
netivan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
exception:throw vs throw e!
Где-то в степи,

похоже. вот изучить надо http://stackoverflow.com/questions/4217616/incorrect-stacktrace-by-rethrow
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / exception:throw vs throw e! / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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