Die C# Erweiterung für Visual Studio Code bietet mächtige Unterstützung für das Erstellen und Debuggen von .NET Core Anwendungen in Windows, Linux oder Mac Betriebssystemen. Enthalten sind unter anderen folgende Features:

  • Zeile bei Zeile Codeschritte
  • Haltepunkte
  • Variableninspektion
  • Multi-Thread Debug unterstützung
  • Aufrufüberwachung
  • Debug Konsole

Wenn Ihr nun eine Konsolenanwendung erstellt und Daten als Eingabe lesen wollt, dann könnt ihr über die Standardkonsole in VS Code keine Eingaben machen. Falls Ihr also etwas in die Richtung wie dieses kleine Codestück schreibt, anschließend kompiliert und debuggen möchtet, könnt ihr keine Eingabe machen und kommt nicht weiter.

 class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Enter your name: ");
            string name = Console.ReadLine();

            Console.WriteLine("Hallo {0}", name);
        }
    }

Um dieses Problem zu lösen, müsst ihr eure launch.json Datei bearbeiten, welche sich im .vscode Ordner befindet. Ändert in eurem Konfigurationsblock für den .NET Core Launch das „console“ Property von „internalConsole“ auf „integratedTerminal“. Eure launch.json sollten dann in etwa so aussehen.

   "configurations": [
        {
            "name": ".NET Core Launch (console)",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            // If you have changed target frameworks, make sure to update the program path.
            "program": "${workspaceFolder}/bin/Debug/netcoreapp3.0/vscodedemo.dll",
            "args": [],
            "cwd": "${workspaceFolder}",
            // For more information about the 'console' field, see https://aka.ms/VSCode-CS-LaunchJson-Console
            // "console": "internalConsole",
            "console": "integratedTerminal",
            "stopAtEntry": false
        },

Ihr könnt anstatt integratedTerminal auch auf externalTerminal umstellen, dann öffnet sich für das debuggen ein neues externes Terminal.

Weitere Informationen über Debugging in Visual Studio Code könnt ihr hier finden: https://code.visualstudio.com/Docs/editor/debugging