14. Nov 2019
Lesedauer 2 Min.
C# 8 für alle Projekte nutzen
.NET Framework
Die aktuellste Version von C# gibt es jetzt schon rund drei Monate. Wer die neuen Funktionen für alle Projekte nutzen möchte, muss lediglich zwei Hemmschwellen beseitigen.

Offiziell veröffentlicht wurde C# 8 im September auf der .NET Conf zusammen mit .NET Core 3 und Visual Studio 16.3 (beziehungsweise 8.3 bei der Edition für den Mac). Zwar waren .NET Core 3 sowie .NET Standard 2.1 bei der Veröffentlichung eng mit C# 8 verknüpft, jedoch lässt sich die neueste Sprachversion auch mit älteren .NET-Varianten einsetzen, beispielsweise mit .NET Standard 2.0. Dafür sollte man dann aber die aktuellste Version von Visual Studio nutzen. Die kommt mit C#-8-Compiler und wenn der Code komplett kompiliert läuft er in der Regel auch. Zwei bekannte Hemmschwellen gilt es dafür noch zu überwinden:
- Erstens gibt es eine Default-Einstellung für die Sprachversion. Bei .NET Standard 2.0 ist das C# 7.3. Dies kann man ändern, indem man in der csproj-Datei den Eintrag LangVersion auf 8.0 setzt: 8.0
- Die zweite Hemmschwelle sind einige wenige Typen, die nicht sofort kompiliert werden können, wie beispielsweise IAsyncEnumerable. Diese lassen sich jedoch über die beiden NuGet-Pakete Microsoft.Bcl.AsyncInterfaces und Microsoft.Bcl.HashCode nachrüsten.