Neu in .NET 10.0 [38]: RemoveRange() und RemoveAll() in der Klasse JsonArray

Mit RemoveRange() und RemoveAll() entfernt man Elemente aus einem JSON-Array.

vorlesen Druckansicht
Verkehrsschild mit Aufschrift .NET

(Bild: Pincasso / Shutterstock.com)

Lesezeit: 1 Min.
Von
  • Dr. Holger Schwichtenberg
close notice

This article is also available in English. It was translated with technical assistance and editorially reviewed before publication.

In der Klasse JsonArray im Namensraum System.Text.Json.Nodes bietet Microsoft nun zwei neue Methoden RemoveRange() und RemoveAll().

Der Dotnet-Doktor – Holger Schwichtenberg
Der Dotnet-Doktor – Holger Schwichtenberg

Dr. Holger Schwichtenberg ist technischer Leiter des Expertennetzwerks www.IT-Visions.de, das mit 53 renommierten Experten zahlreiche mittlere und große Unternehmen durch Beratungen und Schulungen sowie bei der Softwareentwicklung unterstützt. Durch seine Auftritte auf zahlreichen nationalen und internationalen Fachkonferenzen sowie mehr als 90 Fachbücher und mehr als 1500 Fachartikel gehört Holger Schwichtenberg zu den bekanntesten Experten für .NET und Webtechniken in Deutschland.

  • RemoveRange() nimmt zwei Zahlen entgegen: Index und Count. Der Index ist wie ĂĽblich nullbasiert, das heiĂźt RemoveRange(5, 2) entfernt das sechste und siebte Element.
  • RemoveAll() erwartet ein Predicate<JsonNode>-Objekt und erlaubt die Angabe eines Löschkriteriums, beispielsweise alle Zahlen kleiner oder gleich 4: RemoveAll(n => n.GetValue<int>() <= 4);
Heise-Konferenz: betterCode() .NET 11.0
betterCode() .NET 11.0

(Bild: King / stock.adobe.com)

Das ist neu in .NET 11.0: Dr. Holger Schwichtenberg und weitere Experten präsentieren am 17. November 2026 auf der Online-Konferenz betterCode() .NET 11.0 die Änderungen für Entwicklerinnen und Entwickler. Tickets zum Frühbucherpreis sind im Online-Shop verfügbar.

Folgender Code zeigt die Funktionen RemoveRange() und RemoveAll():

public void JsonArrayRemoveRangeAndAll()
 {
  CUI.Demo("System.Text.Json: JsonArray.Remove(All|Range) ");
 
  // Hilfsroutine zur Ausgabe eines JsonArray
  void PrintJsonArray(string Title, System.Text.Json.Nodes.JsonArray array)
  {
   CUI.LineCyan(Title + " Länge des JsonArray: " + array.Count);
   foreach (var item in array)
   {
    System.Console.Write(item + " ");
   }
   System.Console.WriteLine();
  }
 
  System.Text.Json.Nodes.JsonArray? array = JsonSerializer.Deserialize<System.Text.Json.Nodes.JsonArray>("""[ 1, 2, 3, 4, 5, 6, 7, 8, 9 ]""");
  if (array == null)
  {
   System.Console.WriteLine("Array ist null"); return;
  }
 
  PrintJsonArray("JSON Array: Ausgangszustand", array); // 9 Elemente
 
  array.RemoveRange(5, 2);
  PrintJsonArray("JSON Array: Nach RemoveRange(5, 2)", array); // 7 Elemente
 
  array.RemoveAll(n => n.GetValue<int>() <= 4);
  PrintJsonArray("JSON Array: Nach RemoveAll(n => n.GetValue<int>() <= 4)", array); // 3 Elemente
 }

Ausgabe des Beispielcodes (Abb. 1).

Videos by heise

(rme)