Skip to content

Latest commit

History

31 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

JsonDocumentPath

JsonDocumentPath is a class library to extract values from JSON (System.Text.Json.JsonDocument) with single line expressions

The JsonPath parser is based on the Newtonsoft.Json

NuGet Package

How to use it

stringjson=@"{ ""persons"": [ { ""name"" : ""John"", ""age"": ""26"" }, { ""name"" : ""Jane"", ""age"": ""2"" } ] }";varmodels=JsonDocument.Parse(json);varresults=models.SelectElements("$.persons[?(@.age > 3)]").ToList();

Implementation

Because JsonDocumentPath is using the same Json.net strategic for parsing and evaluation the following is a list of pieces were already implemented:

Filters:

  • ArrayIndexFilter
  • ArrayMultipleIndexFilter
  • ArraySliceFilter
  • FieldFilter
  • FieldMultipleFilter
  • QueryFilter
  • QueryScanFilter
  • RootFilter
  • ScanFilter
  • ScanMultipleFilter

Unit Test:

  • JPathParseTests
  • QueryExpressionTests
  • JPathExecuteTests

About

JsonDocumentPath is a class library to extract values from JSON (System.Text.Json.JsonDocument) with single line expressions (JsonPath)

Resources

Stars

38 stars

Watchers

4 watching

Forks

Releases

Packages

Used by

Contributors

Languages