DebuggerDisableUserUnhandledExceptionsAttribute Classe

Définition

Si un débogueur .NET est attaché qui prend en charge l’API BreakForUserUnhandledException(Exception), le débogueur ne s’arrête pas sur les exceptions non gérées par l’utilisateur lorsque l’exception est interceptée par une méthode avec cet attribut, sauf si BreakForUserUnhandledException(Exception) est appelée.

public ref class DebuggerDisableUserUnhandledExceptionsAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method)]
public sealed class DebuggerDisableUserUnhandledExceptionsAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Method)>]
type DebuggerDisableUserUnhandledExceptionsAttribute = class
    inherit Attribute
Public NotInheritable Class DebuggerDisableUserUnhandledExceptionsAttribute
Inherits Attribute
Héritage
DebuggerDisableUserUnhandledExceptionsAttribute
Attributs

Remarques

Visual Studio a ajouté la prise en charge de l’interception d’exceptions asynchrones non gérées par l’utilisateur et elle est activée par défaut. Cette fonctionnalité existe depuis longtemps pour les méthodes synchrones, mais pas pour les méthodes async/await. La méthode BreakForUserUnhandledException(Exception) désactive la fonctionnalité pour des méthodes spécifiques. Cela est utile pour les exceptions qui se propagent par le biais du code utilisateur, mais qui sont censées être gérées par le code de framework. Cet attribut est conçu pour être utilisé avec BreakForUserUnhandledException(Exception).

Exemple

[MethodImpl(MethodImplOptions.NoInlining)]
[DebuggerDisableUserUnhandledExceptions]
static async Task InvokeUserCode(Func<Task> userCode)
{
  try
  {
      await userCode();
  }
  catch (Exception ex)
  {
      if (TryHandleWithFilter(ex))
      {
          return; // example case where we don't want to break for user-unhandled exceptions
      }

      Debugger.BreakForUserUnhandledException(e); // debugger will stop here and show the exception if attached.
  }
}

Constructeurs

DebuggerDisableUserUnhandledExceptionsAttribute()

Initialise une nouvelle instance de la classe DebuggerDisableUserUnhandledExceptionsAttribute.

Propriétés

TypeId

En cas d’implémentation dans une classe dérivée, obtient un identificateur unique pour cette Attribute.

(Hérité de Attribute)

Méthodes

Equals(Object)

Retourne une valeur qui indique si cette instance est égale à un objet spécifié.

(Hérité de Attribute)
GetHashCode()

Retourne le code de hachage pour cette instance.

(Hérité de Attribute)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
IsDefaultAttribute()

En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut de la classe dérivée.

(Hérité de Attribute)
Match(Object)

En cas de substitution dans une classe dérivée, retourne une valeur qui indique si cette instance est égale à un objet spécifié.

(Hérité de Attribute)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

S’applique à