Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
C# 15 enthält die folgenden neuen Features. Sie können diese Features mit der neuesten Visual Studio 2026-Version oder dem .NET 11 Preview SDK ausprobieren:
C# 15 ist die neueste C#-Version. C# 15 wird unter .NET 11 unterstützt. Weitere Informationen finden Sie unter C#-Sprachversionsverwaltung.
Sie können das neueste .NET 11 Preview SDK von der .NET-Downloadseite herunterladen. Sie können auch Visual Studio 2026-Insider herunterladen, das das .NET 11 Preview-SDK enthält.
Neue Features werden der Seite "Neuigkeiten in C#" hinzugefügt, wenn sie in öffentlichen Vorschauversionen verfügbar sind. Der Arbeitssatzabschnitt der Roslyn-Featurestatusseite verfolgt, wenn anstehende Features in die Hauptzweige zusammengeführt werden.
Sie finden alle in C# 15 eingeführten Breaking Changes in unserem Artikel zu den Breaking Changes.
Hinweis
Wir interessieren uns für Ihr Feedback zu diesen Features. Wenn Sie bei einem dieser neuen Features auf Probleme stoßen, erstellen Sie ein neues Problem im Repository dotnet/roslyn.
Auflistungsausdrucksargumente
Sie können Argumente an den Konstruktor oder die Factory-Methode der zugrunde liegenden Sammlung übergeben, indem Sie ein with(...)-Element als erstes Element in einem Sammlungsausdruck verwenden. Mit diesem Feature können Sie Kapazitäts-, Vergleichs- oder andere Konstruktorparameter direkt in der Syntax des Sammlungsausdrucks angeben.
Das folgende Beispiel zeigt, wie Sie ein Kapazitätsargument an den List<T>-Konstruktor und einen Komparator an den HashSet<T>-Konstruktor übergeben.
string[] values = ["one", "two", "three"];
// Pass capacity argument to List<T> constructor
List<string> names = [with(capacity: values.Length * 2), .. values];
// Pass comparer argument to HashSet<T> constructor
HashSet<string> set = [with(StringComparer.OrdinalIgnoreCase), "Hello", "HELLO", "hello"];
// set contains only one element because all strings are equal with OrdinalIgnoreCase
Weitere Informationen zu Auflistungsausdrucksargumenten finden Sie im Sprachreferenzartikel zu Auflistungsausdrücken oder zur Featurespezifikation. Informationen zur Verwendung von Auflistungsausdrucksargumenten in Sammlungsinitialisierern finden Sie unter Object and Collection Initializers.