Ich verwende Json.NET. Für die folgende JSON:Warum ein JSON-Pfadausdruck "*" keine Ergebnisse liefert (Json.NET)
var token = JToken.Parse("[\"v\"]");
Ich betreibe zwei Ausdrücke:
var notFound = token.SelectTokens("*");
var found = token.SelectTokens("[*]");
Aus irgendeinem Grund die erste keine Token findet, aber der zweite Fall ist. Ich habe das Verhalten mit this Online-Tool überprüft und es beweist auch, dass "*"
in diesem Fall genauso wie "[*]"
verhalten sollte.
Json.NET ist eine der beliebtesten und am häufigsten verwendeten Framework in .NET. Also denke ich, ist ein Grund für ein solches Verhalten ... was?
Die Wurzel in JSON Pfad ist '$'. Daher würde ich erwarten, dass '$. *' Alle untergeordneten Elemente unter der Wurzel abgleicht. Aber das tut es nicht. Auch nicht "$ *". '$ [*]' Funktioniert aber wieder ...:/ –