Frage Wie benutzt man den Roslyn c # Compiler mit Visual Studio 2015?


Ich habe ein wenig Verwirrung über Roslyn.

Was habe ich getan: Ich habe installiert vs 2015 Community Edition und Download in erweiterbarkeit> Compiler-Plattform sdk herunterladen.

Also habe ich eine einfache Konsolenanwendung erstellt: Hallo Welt Beispiel.

Nun, ich erwarte, dass ich den c # -Compiler zwischen dem VS2015 Standard und Roslyn ... wählen werde, aber ich habe keine solche Option gefunden. Also meine erste Frage ist: Wie wählt man die Version des c # -Compilers?

Zweitens habe ich master-roslyn heruntergeladen und ich baue, dann habe ich csc.exe gefunden, naja die komischen dinge sind das wenn ich die exe lauche Ich bekomme c # Compiler-Version 42.42.42.42. ???? Recht?

Dann habe ich ein paar Tutorials gemacht, aber alles was ich will:  um eine Quelle aus Textdatei oder String-Vars zu laden und den Syntaxbaum zu analysieren oder zu ändern, dann kompiliere nach var.

Nun, an diesem Punkt bin ich verwirrt ... Also:

Was ist Roslyn genau? Ein Meta-Compiler? Das bedeutet, dass ich meinen Code zur Laufzeit genauso wie Reflection ändern kann? Zweitens: Wie kann mit VS2015 mit Standard-CSC kompiliert werden oder wählen Sie Roslyn? Drittens: Wenn ich eine benutzerdefinierte Version von Roslyn erstelle Wie kann ich meine Quelle mit Vs2015 kompilieren? Was wissen Sie, wenn csc.exe Roslyn ist? Keine Hilfe oder Befehlszeile druckt den Codenamen.

Vielen Dank


28
2017-12-07 16:18


Ursprung


Antworten:


Es sieht also so aus, als hättest du ein paar Fragen:

Was ist Roslyn?

Roslyn ist der neue Standardcompiler in Visual Studio 2015. Wenn Sie Anwendungen in Visual Studio 2015 erstellen und ausführen, werden sie mit dem Roslyn-Compiler kompiliert. Sie können alle neuen C # 6-Funktionen nutzen, die nur innerhalb des neuen Compilers verfügbar sind.

Wenn Sie VS2015 verwenden, hat Roslyn den alten Compiler vollständig ersetzt, und soweit ich weiß, können Sie den alten Compiler nicht in VS 2015 verwenden.

Roslyn ist auch eine Plattform, mit der Sie Programme erstellen können, die andere Programme modifizieren, interpretieren und verstehen können. Es ist nicht wirklich dazu gedacht, dass Sie Code schreiben können, der sich selbst modifiziert (obwohl das wahrscheinlich bis zu einem gewissen Grad möglich ist).

Die häufigsten Anwendungsfälle für Roslyn sind:

  1. Gebäude Code-Analysatoren die Fehler und Warnungen in Visual Studio bereitstellen.
  2. Erstellen von Erweiterungen für Visual Studio, die Quellcode verstehen.
  3. Erstellen anderer Tools, die Quellcode verstehen oder ausführen. Beispiel: SkriptCS - Scripting mit C # -Code.

Um Roslyn für diese Zwecke zu verwenden, ziehen Sie die Microsoft.CodeAnalysis Pakete von NuGet. Sie können diese Pakete verwenden, um Code zu analysieren, Syntaxbäume zu analysieren, Symbole zu analysieren oder Code zu kompilieren und IL auszulösen.

Wenn Sie mehr über Roslyn erfahren möchten, habe ich eine Serie mit dem Namen "Roslyn" gestartet Lerne Roslyn jetzt das könnte dich interessieren.

Kann ich den Compiler ersetzen?

Ja, das kannst du, aber ich bin nicht davon überzeugt, dass dies eine großartige Idee ist, abgesehen von Teständerungen, die du zu Roslyn beitragen willst. Sie können Roslyn von GitHub herunterziehen und folgen diese Anweisungen um Roslyn aus Visual Studio zu erstellen und auszuführen.

Wenn Sie diesen Anweisungen folgen, können Sie das Roslyn-Projekt mit F5 ausführen. Es wird eine neue Instanz von Visual Studio gestartet, die Ihren angepassten Compiler verwendet. So werden Leute außerhalb von Microsoft ab sofort Funktionen für den Compiler bereitstellen. (Zuvor konnten Sie Ihren benutzerdefinierten Compiler nicht in Visual Studio bereitstellen, aber das wurde in Visual Studio Update 1 behoben).


36
2017-12-07 19:31



Roslyn ist zwei Dinge:

  1. Eine API, mit der Sie "Compiler-Dinge" wie Syntaxbäume und Symbole sehen können.
  2. Eine neue csc.exe, die auf # 1 implementiert ist.

Wenn du es machen willst Änderungen an den Compiler und verwenden, um zu bauen, werfen Sie einen Blick auf diese Anweisungen wenn du es nicht schon getan hast. Es gibt ein paar verschiedene Möglichkeiten, wie Sie Ihre eigene Version von csc.exe erstellen und dann zum Erstellen von etwas verwenden können. Aber es gibt keinen "Auswahl" -Dialog, wie Sie ihn suchen.


9
2017-12-07 19:30



Roslyn ist der Standardcompiler von Visual Studio 2015. Wenn Sie also VS2015 installieren, verwenden Sie bereits Roslyn.

Roslyn ist ein Codename für .NET-Compilerplattformund es stellt Open-Source-C # - und Visual Basic-Compiler zur Verfügung. Das Projekt ist verfügbar am Github.


1
2017-09-01 20:19