Не могу получить сообщение при передаче нулевого значения, вместо этого получить необработанное исключение во время выполнения - PullRequest
0 голосов
/ 09 ноября 2018

Основная программа

Класс стека

Выходное изображение

private readonly List<object> _stack = new List<object>();

        public void Push(object obj)
        {

            if (obj != null)
            {
                _stack.Add(obj);
            }

            else
            {
                throw new InvalidOperationException("Null value is passed");
            }

Мне нужно получить исключение "Пустое значение передано", но я получаю необработанное исключение.

1 Ответ

0 голосов
/ 09 ноября 2018

Я считаю, что это необработанное, потому что вы не ловите это. Основное исключение должно все еще быть вашим недопустимым исключением операции. Попробуйте добавить блок try / catch, где вы вызываете метод Push:

 try
 {
     Push(null);
 }
 catch (InvalidOperationException ioex)
 {
     MessageBox.Show(ioex.Message);
 }
 catch (Exception ex)
 {
     // Unhandled exception
     MessageBox.Show(ex.Message);
 }

В противном случае без дополнительной информации трудно сказать.

...