Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 3 Min.

String-Interpolation in C# 10 und .NET 6

Die Textverarbeitung ist das Herzstück zahlreicher Anwendungen und Dienste, und in .NET bedeutet das jede Menge System.String. Mit .NET 6 und C# 10 kommen neue, leistungsfähige Methoden dazu.
Textverarbeitung ist das Herzstück zahlreicher Anwendungen und Dienste. In .NET stecken die Methoden dafür in System.String. Schon mit .NET 1.0 kamen schier unzählige Möglichkeiten, Strings zu erstellen und seitdem sind viele weitere hinzugekommen. Ob über String-Konstruktoren oder StringBuilder oder ToString-Überschreibungen oder Hilfsmethoden für String wie Join oder Concat oder Create oder Replace: APIs zum Erstellen von Strings sind allgegenwärtig. Eine der leistungsfähigsten APIs zum Erstellen von Strings in .NET ist jedoch String.Format.Die Methode String.Format verfügt über eine Vielzahl von Überladungen, denen allen gemeinsam ist, dass sie eine "zusammengesetzte Formatzeichenfolge" und zugehörige Argumente bereitstellen können. Diese Formatzeichenkette enthält eine Mischung aus literalem Text und Platzhaltern, die manchmal als "Formatelemente" oder "Löcher" bezeichnet werden, die dann von der Formatierungsoperation mit den gelieferten Argumenten ausgefüllt werden. Zum Beispiel gibt string.Format("Hallo, {0}! Wie geht es Ihnen an diesem schönen {1}?", name, DateTime.Now.DayOfWeek) bei einem Namen von "Stephen" und einem Aufruf an einem Donnerstag die Zeichenkette "Hallo, Stephen! Wie geht es dir an diesem schönen Donnerstag?". Es stehen weitere Funktionen zur Verfügung, wie zum Beispiel die Möglichkeit, einen Formatspezifikator anzugeben, so ergibt etwa string.Format("{0} in hex ist 0x{0:X}", 12345) den String "12345 in hex ist 0x3039".All diese Fähigkeiten machen String.Format zu einem Arbeitspferd, das einen großen Teil der String-Erstellung übernimmt. Sie ist sogar so wichtig und nützlich, dass in C# 6 eine neue Syntax hinzugefügt wurde, um sie noch besser nutzbar zu machen. Diese "String-Interpolations"-Funktionalität ermöglicht es Entwicklern, ein Dollarzeichen $ direkt vor dem String zu platzieren. Anstatt Argumente für die Formatelemente separat anzugeben, können diese Argumente dann direkt in den interpolierten String eingebettet werden. Das obige Beispiel kann nun beispielsweise als $"Hallo, {Name}! Wie geht es dir an diesem schönen {DateTime.Now.DayOfWeek}?" geschrieben werden. Das Ergebnis ist dasselbe wie oben, die Syntax allerdings leichter nachzuvollziehen.Was mit C# 10 und .NET 6 hinzugekommen ist und wie Sie die neuen Hilfsmittel nutzen können, erklärt Stephen Toub, Partner Software Engineer .NET in diesem Beitrag des Microsoft Developer Blogs.

Neueste Beiträge

Hierarchische Testdata-Builder - Testdata-Builder, Teil 1
Lesbare Tests bei tiefen Objekthierarchien mit dem Collection-Builder-Pattern.
4 Minuten
Deep Learning mit Python - Python und AI, Teil 3
In der heutigen KI-Entwicklung spielen Deep-Learning-Frameworks eine zentrale Rolle. Ein Vergleich der beiden populärsten Bibliotheken TensorFlow und PyTorch.
10 Minuten
DDC hakt nach: Bringt Blazor 10 Ordnung ins Chaos?
Mit Blazor lässt sich Code in C# schreiben, der im Web-Frontend ausgeführt wird. Die Version 10 soll Ordnung in das gewachsene Framework bringen. Dr. Holger Schwichtenberg verrät im Interview, was sich getan hat.
3 Minuten
3. Nov 2025
Miscellaneous

Das könnte Dich auch interessieren

Benchmark im Unit-Test-Stil - Best of NuGet, Teil 4
NuGet-Pakete können das Leben des .NET-Entwicklers sogar um neue Werkzeuge erweitern, die sich auf den Entwicklungsworkflow (und nicht den bearbeiteten Code) auswirken. Mit BenchmarkDotNet steht ein Musterbeispiel dieses Konzepts zur Verfügung, das die Überprüfung der Performance von Code aller Arten ermöglicht.
7 Minuten
16. Okt 2025
Attraktives GUI mit Spectre.Console - Best of NuGet, Teil 6
Mit der Bibliotheksfamilie Spectre.Console steht ein neues Produkt ante portas, das die Realisierung von visuell ansprechenden Kommandozeileninterfaces zu erleichtern sucht.
7 Minuten
29. Okt 2025
Loggingdaten-Einlaufstelle mit Komfortfunktionen - Best of NuGet, Teil 5
Die in Android implementierte Logging-Funktion ist ein leistungsfähiges Beispiel für moderne Logging-Systeme. Mit Serilog steht ein ähnliches System für .NET-Applikationen zur Verfügung, das allerdings einige weit über das große Vorbild hinausgehende Funktionen offeriert.
6 Minuten
22. Okt 2025
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige