Detectar varias excepciones en C#

Muhammad Maisam Abbas 12 octubre 2023
  1. Detecte varias excepciones con la clase Exception en C#
  2. Detecte múltiples excepciones con la declaración if en C#
Detectar varias excepciones en C#

Este tutorial discutirá los métodos para detectar múltiples excepciones en C#.

Detecte varias excepciones con la clase Exception en C#

La clase Exception se utiliza para representar una excepción general en C#. Podemos usar la clase Exception dentro de la cláusula try...catch para detectar cualquier tipo de excepción lanzada por el código. Vea el siguiente código de ejemplo.

using System;

namespace convert_int_to_bool {
  class Program {
    static void Main(string[] args) {
      try {
        int i = 1;
        bool b = Convert.ToBoolean(i);
        Console.WriteLine(b);
      } catch (Exception e) {
        Console.WriteLine("An Exception Occured");
      }
    }
  }
}

Producción :

True

En el código anterior, detectamos cualquier tipo de excepción lanzada por nuestro código con la clase Exception en C#. Este enfoque generalmente se desaconseja porque no nos brinda suficiente información sobre el problema y cómo solucionarlo. Siempre deberíamos preferir tipos de excepción específicos en lugar de este genérico.

Detecte múltiples excepciones con la declaración if en C#

El uso de excepciones específicas requiere que escribamos mucho código en forma de cláusulas catch. Podemos usar la declaración if para detectar múltiples tipos de excepciones con una sola cláusula catch en C#. Vea el siguiente código de ejemplo.

using System;

namespace convert_int_to_bool {
  class Program {
    static void Main(string[] args) {
      try {
        int i = 1;
        bool b = Convert.ToBoolean(i);
        Console.WriteLine(b);
      } catch (Exception e) {
        if (ex is FormatException || ex is OverflowException) {
          Console.WriteLine("Format or Overflow Exception occured");
        }
      }
    }
  }
}

Producción :

True

En el código anterior, detectamos las excepciones FormatException y OverflowException con una sola cláusula catch utilizando una instrucción if en C#.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artículo relacionado - Csharp Exception