/langversion (C#-Compileroptionen)

Führt dazu, dass der Compiler nur Syntax akzeptiert, die in der ausgewählten C#-Sprachspezifikation enthalten ist.

Syntax

/langversion:option  

Argumente

option
Folgende Werte sind gültig:

Option Bedeutung
default Der Compiler akzeptiert alle gültige Sprachsyntax, die es unterstützen kann. Default
ISO-1 Der Compiler akzeptiert nur Syntax, die in ISO/IEC 23270:2003-C# (1.0/1.1) enthalten ist ISO1
ISO-2 Der Compiler akzeptiert nur Syntax, die in ISO/IEC 23270:2006 C# (2.0) enthalten ist ISO2
3 Der Compiler akzeptiert nur Syntax, die in C# 3.0 oder früher enthalten ist CS3
4 Der Compiler akzeptiert nur Syntax, die in C# 4.0 oder früher enthalten ist CS4
5 Der Compiler akzeptiert nur Syntax, die in C# 5.0 oder früher enthalten ist CS5
6 Der Compiler akzeptiert nur Syntax, die in C# 6.0 oder früher enthalten ist CS6
7 Der Compiler akzeptiert nur Syntax, die in C# 7.0 oder früher enthalten ist CS7
latest Der Compiler akzeptiert alle gültige Sprachsyntax, die es unterstützen kann. latest

Hinweise

Metadaten, auf die von Ihrer C#-Anwendung verwiesen wird, unterliefen nicht der Compileroption /langversion.

Da jede Version des C#-Compilers Erweiterungen der Sprachspezifikation enthält, bietet /langversion Ihnen nicht die gleichen Funktionen wie die einer früheren Compilerversion.

Darüber hinaus sind die neue Syntax und die neuen Features nicht unbedingt an die spezifische Frameworkversion gebunden, während C#-Versionupdates für gewöhnlich mit den Hauptversionen von .NET Framework einhergehen. Während die neuen Features ein Compilerupdate erfordern, das mit der C#-Revision veröffentlicht wird, hat jedes Feature seine eigene mindestens erforderliche .NET-API- oder CLR-Anforderungen, durch die es auf abwärtskomptatiblen Frameworks ausgeführt werden kann, indem NuGet-Pakete oder andere Bibliotheken einbezogen werden.

Unabhängig von der verwendeten /langversion-Einstellung verwenden Sie die aktuelle Version der CLR, um Ihre EXE- oder DLL-Dateien zu erstellen. Davon ausgenommen sind Friend-Assemblys und /moduleassemblyname (C#-Compileroption), die unter /langversion:ISO-1 laufen.

So legen Sie diese Compileroption in der Visual Studio-Entwicklungsumgebung fest

  1. Öffnen Sie die Eigenschaften-Seite des Projekts.

  2. Klicken Sie auf die Eigenschaftenseite Build .

  3. Klicken Sie auf die Schaltfläche Erweitert .

  4. Modifizieren Sie die Eigenschaft Sprachversion.

Informationen zum programmgesteuerten Festlegen dieser Compileroption finden Sie unter <xref:VSLangProj80.CSharpProjectConfigurationProperties3.LanguageVersion%2A>.

Siehe auch

C#-Compileroptionen
Verwalten von Projekt- und Projektmappeneigenschaften

C#-Programmiersprachenspezifikation

C#-Sprachspezifikationsreferenz : .NET Foundation
C# 1.0/1.1 ISO/IEC 23270:2003 Informationstechnologie – C#-Sprachspezifikation: ISO-Katalog
C# 2.0 ISO/IEC 23270:2006 Informationstechnologie – C#-Sprachspezifikation: ISO-Katalog
C# 2.0 c042926_ISO_IEC_23270_2006(E).zip ISO/IEC 23270:2006 im PDF-Format: Frei verfügbare ISO-Standards
C# 3.0 CSharp Language Specification.doc C#-Sprachspezifikation Version 3.0 : Microsoft Corporation
C# 4.0 Ecma-334.pdf Standard ECMA-334 4. Edition
C# 5.0 CSharp Language Specification.docx C#-Sprachspezifikation Version 5.0 : Microsoft Corporation
C# 6.0 README.md C#-Sprachspezifikation Version 6 – Inoffizieller Entwurf : .NET Foundation
C# 7.0 (aktuell nicht verfügbar)

Mindestens erforderliche Compilerversion, die Sie benötigen, um alle Sprachfeatures zu unterstützen

Standard, ISO1: Microsoft Visual Studio/Build Tools .NET 2002 oder gebündelter .NET Framework 1.0-Compiler
ISO2: Microsoft Visual Studio/Build Tools 2005 oder gebündelter .NET Framework 2.0-Compiler
CS3: Microsoft Visual Studio/Build Tools 2008 oder gebündelter .NET Framework 3.5-Compiler
CS4: Microsoft Visual Studio/Build Tools 2010 oder gebündelter .NET Framework 4.0-Compiler
CS5: Microsoft Visual Studio/Build Tools 2012 oder gebündelter .NET Framework 4.5-Compiler
CS6: Microsoft Visual Studio Build Tools 2015
CS7, Latest: Microsoft Visual Studio Build Tools 2017