C #: atributo para omitir un método al pasar al modo de depuración

102

¿Hay algún atributo que pueda usar en un método para que, al recorrer un código en el modo de depuración, el depurador permanezca fuera del método?

BuddyJoe
fuente

Respuestas:

175
 [DebuggerStepThrough]

( docs )

Andrew Rollings
fuente
Gracias. Soy un "Logger", las habilidades de depuración se están oxidando.
BuddyJoe
¿Qué pasa con un atributo de una propiedad? [DebuggerStepThrough] solo es válido en clases, estructuras, constructores y métodos
Marchy
¿Hay algo inverso a esto? Tengo una clase parcial vinculada a una clase parcial generada que tiene el atributo [DebuggerStepThrough]. Quiero poder recorrer mi código sin tener que cambiar las propiedades del depurador de VS.
Mike G
2
Asegúrese de agregarusing System.Diagnostics;
Chad
1
Esto no pasa por encima de todo el método (como se pide en la pregunta), sino que lo omite, por lo que el depurador se detiene en el primer método llamado dentro. Por tanto, [DebuggerStepThrough] sólo es útil para métodos muy pequeños que no realizan otras llamadas.
13

Sin olvidar agregar:

using System.Diagnostics;
Ben
fuente
9

Está escrito <DebuggerStepThrough>en VB.NET .

Para usarlo, simplemente coloque el método como:

<DebuggerStepThrough>
Private Sub form_Paint(sender As Object, e As PaintEventArgs) Handles form.Paint
     ' Picasso
End Sub
BaSsGaz
fuente