Verwendung von Visual Studio Code und Verwendung definierter Symbole

8

EDIT: Ich habe die ganze Frage bearbeitet, da dies nicht nur für Unity3D, sondern für alle .sln-Projekte gilt.

Ich habe eine Installation von Visual Studio Code (nicht Visual Studio, aber das: Ссылка ) auf meinem Macbook bei der Arbeit. VSCode funktioniert ansonsten gut mit normalen und Unity3D-Projekten. Ich bekomme Intellisense für alle Klassen, einschließlich Unity3D-spezifische, wie GameObject. Daher denke ich, dass meine Installations- und Startsequenz korrekt ist.

Das einzige Problem, das ich habe, ist, dass VSCode anscheinend die in den .csproj-Dateien definierten Konstanten nicht erkennt. Zuerst habe ich das mit einigen Unity3D-Plugins bemerkt, aber es ist auch in normalen Visual Studio-Projekten persistent.

Mein Beispielprojekt ist eine Dummy-Anwendung, die aus dem Internet heruntergeladen wurde, funktioniert aber vollständig mit MonoDevelop. Das ist mein Code

%Vor%

Der Funktionsaufruf in Main verursacht eine nicht gefundene Ausnahme im Editor, aber es kompiliert gut, da die .csproj-Datei diese Zeile hat:

%Vor%

Jede Überprüfung, ob dies normales Verhalten für VSCode ist, würde sehr geschätzt werden. Wenn jemand eine Lösung kennt, sogar hacky, um diesen Fehler zu umgehen und Intellisense zur automatischen Vervollständigung zu zwingen, würde das auch helfen.

Der Fehler, den ich bekomme, ist:

%Vor%

Meine Hardware ist ein Macbook mit Yosemite und mein Compiler ist dnx-mono.1.0.0-beta4.

    
Quido3 18.05.2015, 07:45
quelle

2 Antworten

3

Dies ist eine bekannte Einschränkung bei OmniSharp , der C # -Engine, deren Visual Studio-Code erstellt . Es gibt eine Verbesserungsanforderung öffnen zum Hinzufügen von <DefineConstants> support, aber es ist mit einem größeren Problem verbunden Grüße an MSBuild Support .

Derzeit ist dies keine unterstützte Konfiguration unter Visual Studio Code. Sie können versuchen, Ihre Konstanten stattdessen über launch.json zu definieren, aber der Support ist bestenfalls minimal.

    
Claies 29.05.2015, 07:27
quelle
3

Es sollte funktionieren ...

Als Vernunftprüfung haben Sie:

  • "Sync MonoDevelop Projekt" kürzlich?
  • Stellen Sie sicher, dass Visual Studio-Code die Lösung -csharp (.sln) ausgewählt hat? (Klicken Sie zum Ändern auf die Flamme in der Statusleiste)
Tobiah Zarlez 18.05.2015 18:40
quelle