2016-03-31 2 views
0

У меня есть каскадные выпадающие списки в моем приложении winform C#, и я получаю данные из службы wcf и заполняя выпадающие списки. Я хочу, чтобы в обработчиках событий возникало какое-либо исключение, тогда я должен был бы использовать исключение для указанного метода. Возможно ли это? Любой синтаксис для этого?Можем ли мы бросить исключение на конкретный метод C#?

что-то вроде этого

MethodName(throw); 
+0

Синтаксис для этого простого Попробуйте и поймайте. Ничего другого, кроме этого, требуется в этой ситуации :) – MajkeloDev

ответ

2

Нет, вы не можете бросить исключение конкретного метода. Исключение всегда вызывает пузырь в стеке вызовов.

Вы можете обработать исключение, вызвав другой метод. В этом случае просто передайте ему исключение:

try 
{ 
} 
catch (Exception ex) 
{ 
    ShowErrorToUser(ex); 
} 

private void ShowErrorToUser(Exception ex) 
{ 
    MessageBox.Show(ex.Message); 
} 
+0

и что, если в этом методе я хочу проверить, какой тип исключения он есть? например 4,5 Типы – Mohsin

+0

Что-то вроде этого? 'if (ex is SomeException) {...}' –

+0

спасибо. Выучено новое слово «есть». не знал, что он существует. Спасибо друг ;) – Mohsin

0

Для этого не существует встроенного способа. Исключения поднимаются и (упрощаются) барботируют стек вызовов. Поэтому он всегда должен быть методом в иерархии вызовов, который ловит исключение.

Вам нужно будет добавить вызов метода, который должен обрабатывать исключение в блоках catch.

Смежные вопросы