C# 6.0 und Visual Basic 14 in älteren .NET-Projekten nutzen

Der Dotnet-Doktor  –  0 Kommentare

Fast alle neuen Sprachfeatures von C# 6.0 und Visual Basic 14 laufen auch in älteren .NET-Versionen – bis herunter zu .NET 2.0.

Microsoft hat in den Programmiersprachversionen C# 6.0 und Visual Basic 14, die mit .NET Framework 4.6 ausgeliefert werden, einige syntaktische Zuckerstückchen ergänzt, zum Beispiel:

  • automatische Properties mit Zuweisung
  • Read-Only automatic Properties
  • Null-Propagating Operator ?.
  • Operator nameof
  • String Interpolation

Nicht alle .NET-Softwareentwickler können aber sofort auf .NET Framework 4.6 umsteigen. Die gute Nachricht: Fast alle alle neuen Sprachfeatures von C# 6.0 und Visual Basic 14 laufen auch in älteren .NET-Versionen – bis herunter zu .NET 2.0. Voraussetzung ist nur, dass eine Kompilierung mit Visual Studio 2015 erfolgt. Die dort enthaltenen neuen C#-/Visual-Basic-Sprachcompiler der .NET-Compiler-Plattform "Roslyn" setzen die neuen Sprachbefehle in Intermediate Language (IL) um, die kompatibel zu allen .NET-Versionen ab .NET 2.0 ist.

Zudem brauchen fast alle neuen Sprachfeatures keine Klassen aus der .NET-Klassenbibliothek, die es nicht auch in .NET 2.0 schon gegeben hat. Ein C#-6.0-Sprachfeature erfordert aber zumindest Version 4.5 des .NET Framework: das Schlüsselwort await in Catch- und Finally-Blöcken. Die für das Schlüsselwort notwendigen Klassen gibt es erst ab .NET Framework 4.5.

Für die Verwendung der Roslyn-Compiler mit der neuen Sprachsyntax in ASP.NET-Webseiten sind besondere Vorkehrungen notwendig.