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

Builder meets Faker - Testdata-Builder, Teil 2
Wer viele Testdaten braucht, liebt Bogus: Die Library erzeugt auf Knopfdruck realistische Daten und geht mit dem Builder-Pattern eine perfekte Kombination ein.
6 Minuten
12. Nov 2025
DDC hakt nach: Hör auf, Dich über Verbindungsstrings zu ärgern
Die App läuft lokal wie geschmiert, aber sobald Backend-Services ins Spiel kommen, stottert die Maschine. Connection Strings, die nicht wollen. Emulator-Konfigurationen, die nerven. Johan Smarius erklärt im Interview und auf der .NET Developer Conference 2025, wie es anders - und viel besser geht.
4 Minuten
10. Nov 2025
Generative AI und Python - Python und AI, Teil 4
Generative KI mit Python nutzen und so die Basis für eigene Anwendungen schaffen.
7 Minuten
Miscellaneous

Das könnte Dich auch interessieren

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
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
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige