2015-07-16 9 views
8

Ich arbeite derzeit an einem Visual Basic-Projekt mit einem Team von Entwicklern, von denen einige zu Visual Studio 2015 wechseln können, sobald es veröffentlicht wird, und einige, die mehrere Monate in Visual Studio 2013 hängen bleiben werden. Beim Testen mit dem RC haben wir festgestellt, dass Visual Studio 2013 Projekte problemlos öffnen wird, aber Benutzer neue Sprachfeatures wie die Stringinterpolation verwenden können, die für Benutzer in VS 2013 nicht verfügbar sind. Wenn ein Benutzer 2015 eincheckt Dieser Code die 2013 Benutzer werden Kompilierungsfehler bekommen. Gibt es eine Projekt-, Lösungs- oder Visual Studio-Einstellung, die den Compiler anweist, Funktionen auf das zu beschränken, was in der vorherigen Version von VB.net verfügbar ist? Idealerweise sollte der Compiler einen Kompilierfehler zurückgeben, wenn er 2015 versucht, diese Funktionen zu verwenden.Einschränken neuer Sprachfunktionen von Visual Basic in Visual Studio 2015

Diese Eigenschaft ist in C# unter Projekteigenschaften> Erstellen> Sprachversion verfügbar, aber ich kann keine Entsprechung für VB.net finden Die Google-Suche ist fehlgeschlagen.

Ich wollte nur erwähnen, dass das Einstellen der .NET-Laufzeitversion auf 4.5 nicht hilft, da diese neuen Sprachfunktionen Compiler-Funktionen sind, die auf älteren Frameworks einwandfrei funktionieren.

+2

Das ist eine Art Duplikat von: http://Stackoverflow.com/a/2884368/736079 – jessehouwing

+0

Ich gebe das eine Chance, hoffentlich funktioniert es immer noch mit der Roslyn. –

Antwort

9

Es gibt keine UI-Funktion zum Festlegen der Sprachversion, aber Sie können die Projektdatei entfernen und <LangVersion>11</LangVersion> dem Standard Visual Basic zu den Spracheinstellungen 2012/2013 hinzufügen. Das C# -Projekt fügt diese Eigenschaft unter den Eigenschaftsgruppen der Projektkonfiguration hinzu. Aus Gründen der Konsistenz habe ich dies im folgenden Beispiel getan.

Die C# -Eigenschaftsseiten machen dasselbe, außer dass C# einen anderen Satz Versionsnummern verwendet.

Ein vollständiger Satz aller Sprachversionen kann found here sein.

2002 (VB 7.0) 
2003 (VB 7.1) 
2005 (VB 8.0) 
2008 (VB 9.0) 
2010 (VB 10.0) 
2012 (VB 11.0) 
2015 (VB 14) 

gerade getestet und das funktioniert für mich, aber ich habe, um das Gehäuse zu ändern:

enter image description here

Daraus ergibt sich:

enter image description here

und einen schönen Fehler beim Aufbau:

enter image description here

+0

Es scheint nicht für mich zu arbeiten, es sei denn, ich habe es in den falschen Abschnitt der Projektdatei hinzugefügt. Alles, einschließlich der String-Interpolation, kompiliert immer noch mit dieser Option. –

+0

Visual Studio beschwert sich tatsächlich über das Element in der Projektdatei. Ich habe versucht, es als Kind von '' hinzufügen und innerhalb einer '' eingewickelt. –

+1

Verstanden! Es ist tatsächlich Groß-und Kleinschreibung (' 11') und muss in eine '' –

Verwandte Themen