D'où le Système.Diagnostics.Debug.Écrire la sortie apparaître?

La suite de programme C# (construit avec csc hello.cs) imprime tout Hello via Console! sur la console et Hello via OutputDebugString dans la fenêtre DebugView. Cependant, je ne vois pas l'une des System.Diagnostics.* appels. Pourquoi est-ce?

using System;
using System.Runtime.InteropServices;
class Hello {
    [DllImport("kernel32.dll", CharSet=CharSet.Auto)]
    public static extern void OutputDebugString(string message);

    static void Main() {
        Console.Write( "Hello via Console!" );
        System.Diagnostics.Debug.Write( "Hello via Debug!" );
        System.Diagnostics.Trace.Write( "Hello via Trace!" );
        OutputDebugString( "Hello via OutputDebugString" );
    }
}

Est là peut-être que certains commutateurs de ligne de commande requis pour csc?

Je ne suis pas à l'aide de Visual Studio pour un de mes développement, c'est de la pure ligne de commande trucs.