C # - Attribut pour ignorer une méthode lors de la progression en mode débogage


102

Existe-t-il un attribut que je peux utiliser sur une méthode pour que lors de l'exécution d'un code en mode débogage, le débogueur reste à l'extérieur de la méthode?

Réponses:


175
 [DebuggerStepThrough]

( docs )


Merci. Je suis un tel "Logger", les compétences du débogueur deviennent rouillées.
BuddyJoe

Qu'en est-il d'un attribut pour une propriété? [DebuggerStepThrough] n'est valide que sur les classes, structures, constructeurs et méthodes
mars

Y a-t-il un inverse de cela? J'ai une classe partielle liée à une classe partielle générée qui a l'attribut [DebuggerStepThrough]. Je veux pouvoir parcourir mon code sans avoir à modifier les propriétés du débogueur de VS.
Mike G

2
Assurez-vous d'ajouterusing System.Diagnostics;
Chad

1
Cela ne passe pas par toute la méthode (comme demandé dans la question), il l'ignore - ainsi le débogueur s'arrête à la première méthode appelée à l'intérieur. Ainsi, [DebuggerStepThrough] n'est utile que pour les très petites méthodes qui ne font aucun autre appel.

13

Sans oublier d'ajouter:

using System.Diagnostics;

9

Il est écrit <DebuggerStepThrough>en VB.NET .

Pour l'utiliser, il suffit de le mettre au-dessus de la méthode comme:

<DebuggerStepThrough>
Private Sub form_Paint(sender As Object, e As PaintEventArgs) Handles form.Paint
     ' Picasso
End Sub
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.