writeline print log example debug c# debugging

print - debug.writeline c#



¿Dónde será Debug.WriteLine en la salida de C#para cuando se compile la versión? (5)

Puse un montón de Debug.WriteLine en mi código para propósitos de depuración. Cuando esté listo para compilar para el lanzamiento, ¿estos Debug.Write influirán en la compilación del lanzamiento, y a dónde enviarán la salida?


Creo que será compilado.


De MSDN : "El atributo ConditionalAttribute se aplica a los métodos de depuración. Los compiladores que admiten ConditionalAttribute ignoran las llamadas a estos métodos a menos que" DEBUG "esté definido como un símbolo de compilación condicional. Consulte la documentación de un compilador para determinar si CondicionalAttribute es compatible y la sintaxis para definir un símbolo de compilación condicional ".

Entonces, si la configuración de la versión no incluye el símbolo DEBUG, las llamadas Debug.WriteLine se omitirán durante la compilación y no habrá salida.


Debug.Writeline no se compila en el código de lanzamiento.


Si los cambia a Trace.WriteLine , puede definir escuchas arbitrarios en el archivo app / web.config.


Debug.WriteLine se anota con el atributo Conditional . (ver MSDN )

ConditionalAttribute le dice al compilador que no genere ese código a menos que se suministre el indicador DEBUG .