Setup DotNet Core Development Environment mit Visual Studio Code

.NET Core ist die neue Plattform für die schnelle und modulare Entwicklung von Server-Anwendungen, die auf Windows, Linux und Mac. Diese Betriebsysteme können nicht nur für die Entwicklung sondern auch der Betrieb / Hosting der Anwendung genutzt werden. Als Entwicklungsumgebung steht für .NET Core nicht nur das mächtigen Visual Studio (Express, Professional, ..)  sondern auch das Visual Studio Code zur Verfügung. Die Besonderheit an Visual Studio Code ist, dass diese Cross-Plattform lauffähig ist und somit auch auf Windows, Linux oder dem Mac zur Verfügung steht. Durch Erweiterungen erreicht man eine super Unterstützung für C# im Bezug auf IntelliSense oder auch Debugging. 

Benötigte Software

Um eine Anwendung - die man wie z.B. hier "Neues DotNet Core Projekt auf der Komandozeile erzeugen" beschrieben - zu bearbeiten, müssen folgende Komponenten installiert werden:

Start developing in VS Code

Öffnet man ein Projekt, dass auf der Kommandozeile erstellt wurde, zeigt VS Code folgende Meldung an:

Die untere Meldung "There are unresolved dependencies from 'project.json'. Please execute restore command' weißt einen darauf hin, dass in dem Verzeichnis noch kein dotnet restore aufgerufen wurde. Durch den blauen Button "Restore" erledigt VS Code diese Aufgabe - eine Alternative ist, dieses auf der Kommandozeile mit dem Befehl dotnet restore durchzuführen. 

Im Output Fenster sieht man dann folgende Ausgabe:

log  : Restoring packages for c:\dng\dng.sample\project.json...
log  : Writing lock file to disk. Path: c:\dng\dng.sample\project.lock.json
log  : c:\dng\dng.sample\project.json
log  : Restore completed in 2161ms.

Die Meldung "Required assets to build and debug are missing from your project." besagt das VS Code spezifische Konfigurationsdateien nicht vorhanden sind, um den Build- und Debug-Prozess auszuführen. Die dafür notwendigen Konfigurationsdateien Launch.json und Tasks.json werden im Ordner .vscode erzeugt. 

Die erzeugte launch.json Datei sieht wie folgt aus:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": ".NET Core Launch (console)",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            "program": "${workspaceRoot}\\bin\\Debug\\netcoreapp1.1\\dng.sample.dll",
            "args": [],
            "cwd": "${workspaceRoot}",
            "externalConsole": false,
            "stopAtEntry": false,
            "internalConsoleOptions": "openOnSessionStart"
        },
        {
            "name": ".NET Core Attach",
            "type": "coreclr",
            "request": "attach",
            "processId": "${command.pickProcess}"
        }
    ]
}

Auf die Detail werden ich bestimmt später detailierte eingehen. Diese Variante reicht zumindest, um mit F5 das erzeugte Projekt zu debuggen. Der Debugger in VS Code sieht dann wie folgt aus:

 

Kommentare sind geschlossen