Afficher en anglais

Partage via


UnhandledExceptionEventArgs.ExceptionObject Propriété

Définition

Obtient l'objet exception non géré.

C#
public object ExceptionObject { get; }

Valeur de propriété

Objet exception non géré.

Exemples

L’exemple suivant illustre l’événement UnhandledException . Il définit un gestionnaire d’événements, MyHandler, qui est appelé chaque fois qu’une exception non gérée est levée dans le domaine d’application par défaut. Il lève ensuite deux exceptions. Le premier est géré par un bloc try/catch . La seconde n’est pas gérée et appelle la MyHandle routine avant l’arrêt de l’application.

C#
using System;

public class Example
{
   public static void Main()
   {
      AppDomain currentDomain = AppDomain.CurrentDomain;
      currentDomain.UnhandledException += new UnhandledExceptionEventHandler(MyHandler);

      try {
         throw new Exception("1");
      } catch (Exception e) {
         Console.WriteLine("Catch clause caught : {0} \n", e.Message);
      }

      throw new Exception("2");
   }

   static void MyHandler(object sender, UnhandledExceptionEventArgs args)
   {
      Exception e = (Exception) args.ExceptionObject;
      Console.WriteLine("MyHandler caught : " + e.Message);
      Console.WriteLine("Runtime terminating: {0}", args.IsTerminating);
   }
}
// The example displays the following output:
//       Catch clause caught : 1
//
//       MyHandler caught : 2
//       Runtime terminating: True
//
//       Unhandled Exception: System.Exception: 2
//          at Example.Main()

Remarques

Cette propriété retourne un objet de type Object plutôt qu’un objet dérivé de Exception. Bien que la Spécification du langage commun exige que tous les types d’exception dérivent de Exception, il est possible que les méthodes lèvent des exceptions avec des objets non dérivés de Exception. Vous pouvez effectuer les opérations suivantes pour utiliser cette exception :

S’applique à

Produit Versions
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Voir aussi