Si utiliza los métodos de la clase Debug para imprimir la información de depuración y comprobar la lógica con aserciones, puede hacer que el código sea más sólido sin afectar al rendimiento y al tamaño del código del producto de distribución.
En proyectos de Visual Studio 2005, al crear una versión de depuración se habilita la clase Debug. Para obtener información acerca de cómo deshabilitar Debug, consulte la documentación de Visual Studio 2005.
Por el contrario, en proyectos de Visual Studio 2005, la propiedad Trace está habilitada de forma predeterminada para las versiones de lanzamiento y de depuración, de manera que se genera código para todos los métodos de seguimiento en dos versiones, la de lanzamiento y la de depuración. Por lo tanto, se puede utilizar Trace para instrumentar versiones de lanzamiento.
Esta clase proporciona métodos para mostrar un cuadro de diálogo Assert y emitir una aserción que siempre produzca un error. Esta clase dispone de métodos de escritura con las siguientes variaciones: Write, WriteLine, WriteIf y WriteLineIf.
Las clases BooleanSwitch y TraceSwitch proporcionan medios para controlar de forma dinámica los resultados del seguimiento. Se pueden cambiar los valores de estos modificadores sin volver a compilar la aplicación. Para obtener información acerca de cómo utilizar el archivo de configuración para establecer un modificador, vea la clase Switch y el tema Modificadores de seguimiento.
Para personalizar el destino de los resultados del seguimiento, agregue o quite instancias de TraceListener de la propiedad Listeners. De forma predeterminada, la clase DefaultTraceListener emite resultados de seguimiento.
Se puede modificar el nivel de sangría con el método Indent o la propiedad IndentLevel. Para modificar el espaciado de una sangría, se utiliza la propiedad IndentSize. Es posible especificar si hay que vaciar de forma automática el búfer de resultados después de cada escritura; para ello, hay que establecer la propiedad AutoFlush en true.
Con el fin de establecer las propiedades AutoFlush e IndentSize para Debug, se puede modificar el archivo de configuración que corresponde al nombre de la aplicación. El archivo de configuración debería tener el formato que se muestra en el siguiente ejemplo:
<configuration>
<system.diagnostics>
<trace autoflush="true" indentsize="7" />
</system.diagnostics>
</configuration>
Nota |
|---|
| Para habilitar la depuración en C#, agregue el indicador /d:DEBUG a la línea de comandos del compilador al compilar el código o agregue #define DEBUG al principio del archivo. En Visual Basic, agregue el indicador /d:DEBUG=True a la línea de comandos del compilador. Para proporcionar una funcionalidad equivalente en C++, se deben incluir llamadas a los métodos de esta clase en un bloque #ifdef DEBUG... #endif. La sintaxis es específica del compilador. Si se utiliza un compilador distinto de los especificados anteriormente, se debe consultar la documentación del compilador para habilitar la compilación condicional debido a los atributos de compilación condicionales colocados en los métodos de Debug. |